{VERSION 6 0 "IBM INTEL NT" "6.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 Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 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 23 "Courier" 1 10 0 0 0 0 0 0 0 0 0 0 3 0 0 1 }{CSTYLE " Dark Red Emphasis" -1 256 "Times" 1 12 128 0 0 1 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "Green Emphasis" -1 257 "Times" 1 12 0 128 0 1 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "Maroon Emphasis" -1 258 "Times" 1 12 128 0 128 1 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "Purple Emphasis" -1 259 "Times" 1 12 102 0 230 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "Red Emphasis" -1 260 "Times" 1 12 255 0 0 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "Blue Emphasis" -1 261 "Times" 0 0 0 0 255 1 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "Grey Emphasis" -1 262 "Tim es" 1 12 96 52 84 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "Purple Emphasis" -1 263 "Times" 1 12 102 0 230 1 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 264 " " 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 265 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 266 "" 0 10 0 0 0 0 0 0 0 0 0 0 3 0 0 1 }{CSTYLE "" -1 267 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 268 "" 0 10 0 0 0 0 0 0 0 0 0 0 3 0 0 1 }{CSTYLE "" -1 269 "" 0 10 0 0 0 0 0 0 0 0 0 0 3 0 0 1 }{CSTYLE "" -1 270 "" 0 10 0 0 0 0 0 0 0 0 0 0 3 0 0 1 }{CSTYLE "Magenta Emphasis" -1 280 "Times" 1 12 200 0 200 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 281 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 282 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 283 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 284 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 285 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 286 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 287 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 288 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 289 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 290 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 291 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 292 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 293 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 294 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 295 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 296 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 297 "" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 298 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 299 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 300 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 301 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 302 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 303 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 304 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 305 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 306 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 307 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 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 }{PSTYLE "Heading 1" -1 3 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 128 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 4 3 0 3 0 2 2 0 1 }{PSTYLE "Heading 2" -1 4 1 {CSTYLE "" -1 -1 "Time s" 1 14 128 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 2 1 0 1 0 2 2 0 1 } {PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Outpu t" -1 12 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 } 1 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Plot" -1 13 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Bullet Item" -1 15 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 3 3 1 0 1 0 2 2 15 2 }{PSTYLE "Norm al" -1 256 1 {CSTYLE "" -1 -1 "Times" 1 12 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 "Normal" -1 257 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Normal" -1 258 1 {CSTYLE "" -1 -1 "Times" 1 12 0 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 {PARA 3 "" 0 "" {TEXT -1 42 "Comparison of adaptive Runge-Kutt a methods" }}{PARA 0 "" 0 "" {TEXT -1 37 "by Peter Stone, Nanaimo, B.C ., Canada" }}{PARA 0 "" 0 "" {TEXT -1 18 "Version: 18.8.2007" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "res tart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 5 "load " }{TEXT 0 7 "desolve" }{TEXT -1 1 " \+ " }}{PARA 0 "" 0 "" {TEXT -1 17 "The Maple m-file " }{TEXT 262 7 "DEso l.m" }{TEXT -1 32 " is required by this worksheet. " }}{PARA 0 "" 0 " " {TEXT -1 121 "It can be read into a Maple session by a command simil ar to the one that follows, where the file path gives its location." } }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "read \"K:\\\\Maple/procdrs/ DEsol.m\";" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 40 "A utility routine for comparing values: " }{TEXT 0 14 "comparew ithfcn" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "This utility routine is required by examples in a later section." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 21 "comparewithfcn: usage" } }{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 264 18 "Calling Sequence:\n" }}{PARA 0 "" 0 "" {TEXT 265 2 " " } {TEXT -1 36 " comparewithfcn( pts, f ,options )" }}{PARA 0 "" 0 "" {TEXT -1 44 " comparewithfcn( pts, fx, x , options ) " }{TEXT 267 1 "\n" }{TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 11 "Parameters:" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 23 17 " pts - " }{TEXT 268 18 "a list of points " } {XPPEDIT 18 0 "[[x[1], y[1]], [x[2], y[2]] .. [x[n], y[n]]];" "6#7$7$& %\"xG6#\"\"\"&%\"yG6#F(;7$&F&6#\"\"#&F*6#F07$&F&6#%\"nG&F*6#F6" } {TEXT 269 1 "." }}{PARA 0 "" 0 "" {TEXT -1 5 " " }}{PARA 0 "" 0 " " {TEXT 23 15 " f or fx - " }{TEXT -1 87 " a function of one va riable or an expression fx defining a function of one variable." }} {PARA 0 "" 0 "" {TEXT -1 6 " " }}{PARA 0 "" 0 "" {TEXT 23 17 " \+ x - " }{TEXT 266 65 "the independent variable is required wh en the 2nd argument is an " }{TEXT -1 10 "expression" }{TEXT 270 4 " f x." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 23 3 " " }{TEXT -1 0 "" } }{PARA 256 "" 0 "" {TEXT -1 12 "Description:" }}{PARA 0 "" 0 "" {TEXT -1 14 "The procedure " }{TEXT 0 14 "comparewithfcn" }{TEXT -1 78 " tab ulates the list of points vertically as the first two columns of a mat rix." }}{PARA 0 "" 0 "" {TEXT -1 263 "The values of the 2nd components are compared with the values obtained by applying the given function \+ to the corresponding 1st components, and listing these \"exact values \" in the 3rd column of the matrix. The absolute or relative error is \+ given in the 4th column." }}{PARA 0 "" 0 "" {TEXT -1 68 "Alternatively , the same information can be printed out line by line." }}{PARA 0 "" 0 "" {TEXT -1 128 "The maximum of the absolute or relative errors is g iven. When the absolute error is tabulated, the mean absolute error is given." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 8 "Options:" }}{PARA 0 "" 0 "" {TEXT -1 22 "mode=linebyline/matrix" }} {PARA 0 "" 0 "" {TEXT -1 106 "With the option \"mode=linebyline\" the \+ information is printed out line by line. This is the default option." }}{PARA 0 "" 0 "" {TEXT -1 112 "With the option \"mode=matrix\" the ta bulated information is given in a matrix as a return value of the proc edure." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 25 "errtype=relative/absolute" }}{PARA 0 "" 0 "" {TEXT -1 152 "This optio n determines whether the absolute or relative error is given. The defa ult is \"errtype=relative\" in which case the relative error is tabula ted." }}{PARA 0 "" 0 "" {TEXT -1 73 "\"errtype=RELATIVE\" and \"errtyp e=REL\" are equivalent to \"errtype=relative\"" }}{PARA 0 "" 0 "" {TEXT -1 75 "\"errtype=ABSOLUTE\" and \"errtype=ABS\" are equivalent \+ to \"errtype=absolute\"." }}{PARA 0 "" 0 "" {TEXT -1 43 "\"errtype\" c an also be typed as \"errortype\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT 263 4 "Note" }{TEXT -1 77 ": If the true value o f the function is zero, the relative error is infinite. " }}{PARA 0 " " 0 "" {TEXT -1 113 "The maximum relative error is computed for the re maining relative errors, ignoring any infinite relative errors. " }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT 263 15 "How to activate" }{TEXT -1 1 ":" }{TEXT 261 1 "\n" }{TEXT -1 154 "To make the procedure active open the subsec tion, place the cursor anywhere after the prompt [ > and press [Enter ].\nYou can then close up the subsection." }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 30 "comparewithfcn: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "comparewithfcn" {MPLTEXT 1 0 6096 "co mparewithfcn := proc(pts,f)\n local xx,y1,y2,r,i,j,n,rows,fn,x,prec, prcsn,saveDigits,\n startoptions,Options,md,t,maxerr,format1,format2 ,g,e,zero,\n proctype,ertyp,xmax,prec1,prec2,vars,averr;\n\n proct ype := false;\n if nargs<2 then\n error \"invalid arguments; th e basic syntax is 'comparewithfcn([[x1,y1],..,[xn,yn]],f(x),x)' or 'co mparewithfcn([[x1,y1],..,[xn,yn]],f)'\"\n end if;\n if not type(pt s,listlist) then\n error \"the 1st argument, %1, is invalid .. it should be a list of points\",pts;\n end if;\n if nargs>2 and not \+ type(args[3],equation) then\n x := args[3];\n if not type(x, name) then\n error \"the 3rd optional argument must be the nam e of the independent variable\"\n end if;\n startoptions := \+ 4;\n vars := indets(f,name) minus indets(f,realcons);\n if v ars<>\{x\} then \n if not type(f,algebraic) or not has(indets( f),\{Int,Sum\}) then\n error \"the 2nd argument, %1, is inv alid .. it should be an expression which depends only on the single va riable %2\",f,x;\n end if;\n end if;\n else\n if t ype(f,procedure) or (type(f,`@`) and type(\{op(f)\},set(procedure))) t hen\n proctype := true;\n startoptions := 3;\n el se\n error \"the 2nd argument, %1, is invalid .. it should be \+ a function of one variable or an expression in the one variable given \+ as a 3rd argument\",f;\n end if;\n end if; \n\n # Get the o ptions.\n md := 0;\n ertyp := 1;\n if nargs>=startoptions then\n Options :=[args[startoptions..nargs]];\n if not type(Option s,list(equation)) then\n error \"each optional argument must b e an equation\"\n end if;\n if hasoption(Options,'mode','md' ,'Options') then\n if not (md='linebyline' or md='matrix') the n\n error \"\\\"mode\\\" must be 'matrix' or 'linebyline'\" \n end if;\n if md='linebyline' then md := 0 else md : = 1 end if;\n end if;\n if hasoption(Options,'errtype','erty p','Options') or \n hasoption(Options,'errortype','ertyp','Opt ions') then\n if not member(ertyp,\{'absolute','ABSOLUTE','ABS ','relative','RELATIVE','REL'\}) then\n error \"\\\"errtype \\\" option must be 'absolute' <-> 'ABSOLUTE' <-> 'ABS' or 'relative' \+ <-> 'RELATIVE' <-> 'REL'\"\n end if;\n if member(ertyp ,\{'absolute','ABSOLUTE','ABS'\})\n then ertyp := 0 else ertyp := 1 end if;\n end if;\n if nops(Options)>0 then\n \+ error \"%1 is not a valid option for %2\",op(1,Options), procname;\n \+ end if;\n end if;\n n := nops(pts);\n prcsn := 0;\n\n # Ch eck the data and find its maximum precision.\n for i to n do\n \+ if nops(pts[i])<>2 then\n error \"the 1st argument must be a l ist of points, where each point is itself a list with two members\"\n \+ end if;\n t := pts[i,1];\n if type(t,float) and type(t, numeric) then\n prec1 := length(convert(op(1,t),string));\n \+ elif type(t,realcons) then\n prec1 := Digits;\n else\n error \"the 1st argument must be a list of points, where each point is itself a list of two real numbers\"\n end if;\n t \+ := pts[i,2];\n if type(t,float) and type(t,numeric) then\n \+ prec2 := length(op(1,t));\n elif type(t,realcons) then\n \+ prec2 := Digits;\n else\n error \"the 1st argument must be a list of points, where each point is itself a list of two real nu mbers\"\n end if;\n prec := max(prec1,prec2);\n if prec >prcsn then prcsn := prec end if;\n end do;\n saveDigits := Digits ;\n Digits := prcsn;\n prec := trunc(prcsn/2);\n \n if proctyp e then\n fn := f;\n else\n fn := unapply(evalf(f),x);\n \+ end if;\n\n rows := NULL;\n maxerr := 0;\n averr := 0;\n zero \+ := false;\n format1 := cat(\"%\",convert(prcsn+5,string),\".\",conve rt(prcsn,string),g);\n format2 := cat(\"%\",convert(prec+4,string), \".\",convert(prec-1,string),e);\n\n for i from 1 to n do\n xx \+ := evalf(pts[i,1]);\n y1 := evalf(pts[i,2]);\n y2 := traperr or(evalf(fn(xx)));\n if y2=lasterror or not type(y2,numeric) then \n error \"function failed to evaluate to a real floating poin t number at %1\",xx;\n end if;\n \n if ertyp=0 then\n \+ r := evalf(abs(y1-y2));\n averr := averr+r;\n i f r>maxerr then\n maxerr := r;\n xmax := xx;\n \+ end if;\n else\n if y2<>0 then\n r := e valf(abs(y1-y2)/abs(y2));\n if r>maxerr then\n \+ maxerr := r;\n xmax := xx;\n end if;\n \+ else\n zero := true;\n r := infinity;\n \+ end if;\n end if;\n\n if md=0 then\n printf(form at1,xx);\n printf(` `);\n printf(format1,y1);\n \+ printf(` function val: `);\n printf(format1,y2);\n \+ if ertyp=0 then\n printf(` abs err: `);\n p rintf(format2,r);\n else\n printf(` rel err: `) ;\n if y2<>0 then\n printf(format2,r)\n \+ else\n printf(infinity);\n end if;\n \+ end if;\n printf(`\\n`);\n else\n rows := r ows,[xx,y1,y2,r];\n end if;\n end do;\n \n print(``);\n i f ertyp=0 then\n printf(` Maximum absolute error: `) ;\n else\n printf(` Maximum relative error: `); \+ \n end if;\n printf(format2,maxerr);\n\n if maxerr<>0 then\n \+ printf(`\\n obtained for the input value: `);\n \+ printf(format1,xmax);\n end if;\n \n if ertyp=1 and zero then\n printf(`\\n excluding any cases where the function \+ value is zero.`);\n end if;\n\n if ertyp=0 then\n averr := av err/n;\n print(``);\n printf(` Mean absolute er ror: `);\n printf(format2,averr); \n end if;\n\n Digits := saveDigits;\n if md=1 then\n print(``);\n if ertyp=0 then \n return array([[x,\"discrete value\",\"function value\",\"ab solute err\"],rows]);\n else\n return array([[x,\"discret e value\",\"function value\",\"relative err\"],rows]);\n end if; \n else\n return NULL;\n end if;\nend proc:" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 34 "Examples \+ appear in a later section" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 46 "A procedure implementing Runge-Kutta meth ods: " }{TEXT 0 9 "desolveRK" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 " " {TEXT -1 16 "desolveRK: usage" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 299 18 "Calling Sequence:\n" }} {PARA 0 "" 0 "" {TEXT 300 2 " " }{TEXT -1 28 " desolveRK( \{de,ic\} , rng )" }{TEXT 301 1 "\n" }{TEXT -1 36 " desolveRK( \{de,ic\}, y( x), rng )" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 11 "Parameters:" }}{PARA 0 "" 0 "" {TEXT -1 4 " " }}{PARA 0 "" 0 "" {TEXT 23 10 " de - " }{TEXT -1 92 " a first order differe ntial equation with the derivative given in the form diff(y(x),x)," }} {PARA 0 "" 0 "" {TEXT -1 94 " (if x and y are t he independent and dependent variables respectively)." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 23 10 " ic - " }{TEXT -1 50 " an initi al condition in the form y(x0) = y0. " }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{PARA 0 "" 0 "" {TEXT -1 7 " " }{TEXT 23 8 "rng - " } {TEXT -1 92 " a range of values x=a..b containing the initial value x 0 of the independent variable. " }}{PARA 0 "" 0 "" {TEXT -1 9 " \+ " }}{PARA 256 "" 0 "" {TEXT -1 12 "Description:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 14 "The procedure " } {TEXT 0 9 "desolveRK" }{TEXT -1 119 " uses a prescribed Runge-Kutta me thod to find a numerical solution to a first order differential equati on of the form " }{XPPEDIT 18 0 "dy/dx = f(x,y);" "6#/*&%#dyG\"\"\"%# dxG!\"\"-%\"fG6$%\"xG%\"yG" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 45 "The numerical solution is given as a list of " }{TEXT 263 6 "points" }{TEXT -1 31 " along the solutio n curve with " }{TEXT 263 14 "equally spaced" }{TEXT -1 32 " values of the first coordinate." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 302 8 "Options:" }{TEXT -1 1 "\n" }}{PARA 0 "" 0 "" {TEXT -1 48 "The numerical solution can be given in two ways:" }}{PARA 15 " " 0 "" {TEXT -1 13 "As a list of " }{TEXT 263 6 "points" }{TEXT -1 26 " along the solution curve." }}{PARA 15 "" 0 "" {TEXT -1 5 "As a " } {TEXT 263 19 "numerical procedure" }{TEXT -1 162 " of a real variable, defined throughout the specified range, which uses an appropriate met hod to interpolate between pre-computed points along the solution curv e." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 180 "In both cases there is a choice of using a fixed or variable step-size. \+ In the case of variable step-size a method of adaptive step-size is us ed in an attempt to control the error." }}{PARA 0 "" 0 "" {TEXT -1 0 " " }{TEXT 303 0 "" }}{PARA 0 "" 0 "" {TEXT 304 46 "Options for both fix ed and variable step-size:" }{TEXT -1 25 "\n\nstepsize=fixed/variable " }}{PARA 0 "" 0 "" {TEXT -1 22 "OR adaptive=false/true" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 143 "With the option \"s tepsize=fixed\", or equivalently \"adaptive=false\", equally spaced x \+ values are used in construction of the numerical solution." }}{PARA 0 "" 0 "" {TEXT -1 136 "With the option \"stepsize=variable\", or equiv alently \"adaptive=true\", the step-size is controlled by estimating t he error at each step." }}{PARA 0 "" 0 "" {TEXT -1 75 "The default opt ion is \"stepsize=variable\", or equivalently \"adaptive=true\"." }} {PARA 0 "" 0 "" {TEXT 263 4 "Note" }{TEXT -1 77 ": The stepsize/adapti ve option can be omitted when the method is specified. \n" }}{PARA 0 " " 0 "" {TEXT -1 59 "output=points/discrete/rkstep/rkinterp/continuous/ procedure" }}{PARA 15 "" 0 "" {TEXT -1 54 "With the options \"output=p oints\" or \"output=discrete\" " }{TEXT 0 9 "desolveRK" }{TEXT -1 66 " returns the numerical solution of the differential equation as a " } {TEXT 263 22 "discrete set of points" }{TEXT -1 38 " along the approxi mate solution curve." }}{PARA 15 "" 0 "" {TEXT -1 97 "With the option \+ \"output=continuous\" , \"output=procedure\" , \"output=rkstep\" or \" output=rkinterp\" " }{TEXT 0 9 "desolveRK" }{TEXT -1 66 " returns the numerical solution of the differential equation as a " }{TEXT 263 19 "numerical procedure" }{TEXT -1 1 "." }}{PARA 15 "" 0 "" {TEXT -1 306 "With the option \"output=rkstep\", the numerical function requires a \+ number of evaluations of the direction field for each new function val ue calculated.\nEach evaluation of the numerical procedure requires a \+ Runge-Kutta step to be performed from one of the precomputed \"mesh\" \+ points of the discrete solution." }}{PARA 15 "" 0 "" {TEXT -1 420 "Wit h the option \"output=rkinterp\" (when this is available) the numerica l procedure for the solution uses polynomial interpolation between the points of the underlying discrete solution. In this case, the constru ction of the numerical procedure that gives the solution requires addi tional stages in each Runge-Kutta step. Various values of the slope fi eld are saved for each interval of the underlying discrete solution. \+ " }}{PARA 258 "" 0 "" {TEXT 263 4 "Note" }{TEXT -1 125 ": \"output=con tinuous\" and \"output=procedure\" are equivalent to \"output=rkinterp \" where polynomial interpolation is available." }}{PARA 258 "" 0 "" {TEXT -1 197 " Polynomial interpolation is available except when \"me thod=rk78d\", \"method=rk89b\" and \"method=rk910\" and in these cases \"output=continuous\" and \"output=procedure\" are equivalent to \"ou tput=rkstep\"" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 145 "info=true/false\nThe option info=true allows the progres s of the procedure to be monitored by printing the result of each step as it is computed. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 " " {TEXT 305 33 "Options for fixed step-size only:" }{TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 65 "\nmethod=euler/impeuler/rk2,rk3,rk4,rk4b, rk5,rk6,rk7,rk8,rk9 etc. " }}{PARA 0 "" 0 "" {TEXT 257 12 "METHODS USE D" }{TEXT -1 1 ":" }}{PARA 15 "" 0 "" {TEXT -1 30 "method=euler, the E uler method" }}{PARA 15 "" 0 "" {TEXT -1 42 "method=impeuler, the impr oved Euler method" }}{PARA 15 "" 0 "" {TEXT -1 52 "method=rk2, the \"c lassical\" mid-point order 2 method" }}{PARA 15 "" 0 "" {TEXT -1 42 "m ethod=rk3, the \"classical\" order 3 method" }}{PARA 15 "" 0 "" {TEXT -1 81 "method=rk3b, an order 3 method with nodes at the 1/3 and 2/3 po ints across a step" }}{PARA 15 "" 0 "" {TEXT -1 83 "method=rk3c, an or der 3 method with nodes at the 3/7 and 16/21 points across a step" }} {PARA 15 "" 0 "" {TEXT -1 89 "method=rk3d, an order 3 method with node s at the 1-1/sqrt(3) and 2/3 points across a step" }}{PARA 15 "" 0 "" {TEXT -1 81 "method=rk3e, an order 3 method with a node at the (1/6)^( 1/3) point across a step" }}{PARA 15 "" 0 "" {TEXT -1 94 "method=rk3f, an order 3 method with a node at the 1/2 and 1/4+sqrt(33)/12 points a cross a step" }}{PARA 15 "" 0 "" {TEXT -1 42 "method=rk4, the \"classi cal\" order 4 method" }}{PARA 15 "" 0 "" {TEXT -1 34 "method=rk4b, Gil l's order 4 method" }}{PARA 15 "" 0 "" {TEXT -1 31 "method=rk4c, 3/8 o rder 4 method" }}{PARA 15 "" 0 "" {TEXT -1 37 "method=rk4d, Ralston's \+ order 4 method" }}{PARA 15 "" 0 "" {TEXT -1 82 "method=rk4e, an order \+ 4 method with nodes at the 3/7 and 6/11 points across a step" }}{PARA 15 "" 0 "" {TEXT -1 37 "method=rk4f, Dormand's order 4 method" }} {PARA 15 "" 0 "" {TEXT -1 44 "method=rk4g, Prince's 5-stage order 4 me thod" }}{PARA 15 "" 0 "" {TEXT -1 82 "method=rk4h, a 5-stage order 4 m ethod that satisfies 6 out of 9 order 5 conditions" }}{PARA 15 "" 0 " " {TEXT -1 82 "method=rk4k, a 5-stage order 4 method that satisfies 7 \+ out of 9 order 5 conditions" }}{PARA 15 "" 0 "" {TEXT -1 51 "method=rk 5, a 6-stage Prince-Dormand order 5 method" }}{PARA 15 "" 0 "" {TEXT -1 61 "method=rk5b, a 6-stage modified Prince-Dormand order 5 method" }}{PARA 15 "" 0 "" {TEXT -1 45 "method=rk5c, a 6-stage Butcher order 5 method" }}{PARA 15 "" 0 "" {TEXT -1 46 "method=rk5d, a 6-stage Fehlbe rg order 5 method" }}{PARA 15 "" 0 "" {TEXT -1 61 "method=rk5e, a 6-st age dominant stage-order 3, order 5 method" }}{PARA 15 "" 0 "" {TEXT -1 61 "method=rk6, an 8-stage modified Prince-Dormand order 6 method" }}{PARA 15 "" 0 "" {TEXT -1 54 "method=rk6b, an 8-stage modified Verne r order 6 method" }}{PARA 15 "" 0 "" {TEXT -1 61 "method=rk6c, an 8-st age modified Verner (1991) order 6 method" }}{PARA 15 "" 0 "" {TEXT -1 52 "method=rk6d, a 7-stage Chammud (2001) order 6 method" }}{PARA 15 "" 0 "" {TEXT -1 57 "method=rk7, a 9-stage \"most robust\" Verner o rder 7 method" }}{PARA 15 "" 0 "" {TEXT -1 44 "method=rk7b, a 9-stage \+ Verner order 7 method" }}{PARA 15 "" 0 "" {TEXT -1 52 "method=rk7c, a \+ 9-stage (early) Verner order 7 method" }}{PARA 15 "" 0 "" {TEXT -1 115 "method=rk8, a 12-stage modified Verner order 8 method (supplied t o Maple by Jim Verner for dsolve's dverk78 method)" }}{PARA 15 "" 0 " " {TEXT -1 46 "method=rk8b, a 12-stage Verner order 8 method " }} {PARA 15 "" 0 "" {TEXT -1 47 "method=rk8c, a 12-stage Fehlberg order 8 method" }}{PARA 15 "" 0 "" {TEXT -1 46 "method=rk8d, an 11-stage Vern er order 8 method" }}{PARA 15 "" 0 "" {TEXT -1 58 "method=rk9, a 15-st age \"most robust\" Verner order 9 method" }}{PARA 15 "" 0 "" {TEXT -1 38 "method=rk9b, a 16-stage order 9 method" }}{PARA 15 "" 0 "" {TEXT -1 86 "method=rk9c, a 15-stage early Verner order 9 method (eval uation goes outside interval)" }}{PARA 15 "" 0 "" {TEXT -1 47 "method= rk10, an 18-stage Curtis order 10 method" }}{PARA 15 "" 0 "" {TEXT -1 56 "method=rk10b, a 18-stage modified Curtis order 10 method" }}{PARA 0 "" 0 "" {TEXT -1 16 "The default is \"" }{TEXT 262 12 "method=euler " }{TEXT -1 2 "\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 263 5 "Notes" }{TEXT -1 2 ": " }}{PARA 15 "" 0 "" {TEXT -1 14 "T he number of " }{TEXT 263 6 "stages" }{TEXT -1 52 " gives the number o f evaluations of the slope field " }{XPPEDIT 18 0 "f(x,y)" "6#-%\"fG6$ %\"xG%\"yG" }{TEXT -1 46 " performed for each single step of the metho d." }}{PARA 0 "" 0 "" {TEXT -1 95 "For orders up to and including orde r 4 the number of stages is (usually) the same as the order." }}{PARA 15 "" 0 "" {TEXT -1 36 "The Verner order 9 method given by \"" }{TEXT 262 11 "method=rk9c" }{TEXT -1 50 "\" requires an evaluation of the sl ope field at an " }{TEXT 307 1 "x" }{TEXT -1 84 " value outside the st ep, which means that it can fail in exceptional circumstances. " }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 6 "alpha=" } {XPPEDIT 18 0 "alpha;" "6#%&alphaG" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 67 "If this option is used, it overrides the method option to provide a" }{TEXT 261 1 " " }{TEXT 263 33 "custom order 2 Runge-Kutta method" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 26 "The formula used has form:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 257 "" 0 "" {TEXT -1 2 " " }{XPPEDIT 18 0 "f[1] = f(x [k],y[k]);" "6#/&%\"fG6#\"\"\"-F%6$&%\"xG6#%\"kG&%\"yG6#F-" }{TEXT -1 4 " " }}{PARA 257 "" 0 "" {TEXT -1 3 " " }{XPPEDIT 18 0 "f[2] = f (x[k]+alpha*h,y[k]+beta*f[1]*h);" "6#/&%\"fG6#\"\"#-F%6$,&&%\"xG6#%\"k G\"\"\"*&%&alphaGF/%\"hGF/F/,&&%\"yG6#F.F/*(%%betaGF/&F%6#F/F/F2F/F/" }}{PARA 257 "" 0 "" {TEXT -1 4 " " }{XPPEDIT 18 0 "y[k+1] = y[k]+s* f[1]+t*f[2];" "6#/&%\"yG6#,&%\"kG\"\"\"F)F),(&F%6#F(F)*&%\"sGF)&%\"fG6 #F)F)F)*&%\"tGF)&F06#\"\"#F)F)" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 23 "When a numerical value " }{XPPEDIT 18 0 "alpha;" "6#%&alphaG" }{TEXT -1 28 " is chosen for alph a, where " }{XPPEDIT 18 0 "0 < alpha;" "6#2\"\"!%&alphaG" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "alpha <= 1;" "6#1%&alphaG\"\"\"" }{TEXT -1 45 ", s and t are calculated from the relations: " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 257 "" 0 "" {TEXT -1 2 " " }{XPPEDIT 18 0 "s+t \+ = 1;" "6#/,&%\"sG\"\"\"%\"tGF&F&" }{TEXT -1 1 "," }}{PARA 257 "" 0 "" {TEXT -1 4 "and " }{XPPEDIT 18 0 "alpha;" "6#%&alphaG" }{TEXT -1 3 " = " }{XPPEDIT 18 0 "beta = 1/(2*t);" "6#/%%betaG*&\"\"\"F&*&\"\"#F&%\"t GF&!\"\"" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 87 "This means th at the second function evaluation used by the method occurs at a fract ion " }{XPPEDIT 18 0 "alpha;" "6#%&alphaG" }{TEXT -1 33 " of the dista nce across the step." }}{PARA 0 "" 0 "" {TEXT -1 122 "For example, \"a lpha=0.5\" is equivalent to choosing \"method=rk2\" and \"alpha=1\" is equivalent to choosing \"method=impeuler\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 306 47 "Options for adaptive (variable ) step-size only:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 42 "method=rk45/rk56/rk67/rk78/rk89/rk910 etc." }}{PARA 0 "" 0 "" {TEXT -1 60 "This option gives a choice between various adaptive \+ methods." }}{PARA 0 "" 0 "" {TEXT 257 12 "METHODS USED" }{TEXT -1 1 ": " }}{PARA 15 "" 0 "" {TEXT -1 136 "method=rk45, a Prince-Dormand 7 st age, combined 4th and 5th order Runge-Kutta method ... interpolation i s available with 3 extra stages" }}{PARA 15 "" 0 "" {TEXT -1 337 "meth od=rk45b, a Bogacki-Shampine 8 stage, combined 4th and 5th order Rung e-Kutta method ... interpolation is available with 3 extra stages\n \+ Two 4th order methods are used for error estimates.\n It is a FSAL ( first same as last) method since the slope field evaluation for the 2 nd error estimate is the first value for the next step." }}{PARA 15 " " 0 "" {TEXT -1 135 "method=rk56, a Verner (2004) 8 stage, combined 5 th and 6th order Runge-Kutta method ... interpolation is available wit h 4 extra stages" }}{PARA 15 "" 0 "" {TEXT -1 137 "method=rk56b, a Pr ince-Dormand 8 stage, combined 5th and 6th order Runge-Kutta method .. . interpolation is available with 4 extra stages" }}{PARA 15 "" 0 "" {TEXT -1 275 "method=rk56c, a Verner (1991) 9 stage, combined 5th and 6th order Runge-Kutta method ... interpolation is available with 3 ex tra stages\n This a FSAL ( first same as last) method since the slop e field evaluation for the error estimate is the first value for the n ext step. " }}{PARA 15 "" 0 "" {TEXT -1 166 "method=rk67, an Enright \+ (Verner 1990 formula) 10 stage, combined 6th and 7th order Runge-Kutta method ...\n interpolation is available with 6 extra stage s " }}{PARA 15 "" 0 "" {TEXT -1 144 "method=rk67b, a Verner \"most ro bust\" 10 stage, combined 6th and 7th order Runge-Kutta method ... int erpolation is available with 6 extra stages" }}{PARA 15 "" 0 "" {TEXT -1 200 "method=rk78, a Verner 13 stage, combined 7th and 8th order Ru nge-Kutta method ... interpolation is available with 8 extra stages \n (supplied to Maple by Jim Verner for dsolve's dverk78 method) \+ " }}{PARA 15 "" 0 "" {TEXT -1 169 "method=rk78b, an Enright (Verner 1 990 formula) 13 stage, combined 7th and 8th order Runge-Kutta method \+ ... \n interpolation is available with 8 extra stages " }} {PARA 15 "" 0 "" {TEXT -1 140 "method=rk78c, a Prince-Dormand 13 stag e, combined 7th and 8th order Runge-Kutta method ... interpolation is \+ available with 10 extra stages " }}{PARA 15 "" 0 "" {TEXT -1 82 "metho d=rk78d, a Fehlberg 13 stage, combined 7th and 8th order Runge-Kutta \+ method " }}{PARA 15 "" 0 "" {TEXT -1 150 "method=rk89, a Verner \"mos t robust\" 16 stage, combined 8th and 9th order Runge-Kutta method ... interpolation is available with 10 or 12 extra stages" }}{PARA 15 "" 0 "" {TEXT -1 72 "method=rk89b, a 17 stage, combined 8th and 9th orde r Runge-Kutta method" }}{PARA 15 "" 0 "" {TEXT -1 106 "method=rk910, \+ a modified Curtis 18 stage, order 10 Runge-Kutta method with error con trol by step-doubling" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 23 "The default option is \"" }{TEXT 262 11 "method=rk67" }{TEXT -1 2 "\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 8 "hstart=h" }}{PARA 0 "" 0 "" {TEXT -1 68 "The step-size for the first trial step. The default is \"hstart=0.1*" }{XPPEDIT 18 0 " 10^ceil(-Digits/10);" "6#)\"#5-%%ceilG6#,$*&%'DigitsG\"\"\"F$!\"\"F," }{TEXT -1 2 "\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 6 "hmax=h" }}{PARA 0 "" 0 "" {TEXT -1 23 "The maximum step-si ze. " }}{PARA 0 "" 0 "" {TEXT -1 256 "The default is \"hmax=0.25\" for combined 4th and 5th order methods and combined 5th and 6th order me thods and \"hmax=0.5\" for combined 6th and 7th order methods, combine d 7th and 8th order methods, combined 8th and 9th order methods and th e order 10 method." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 60 "hmin=h\nThe minimum step-size. The default is \"hmin=min (0.5*" }{XPPEDIT 18 0 "10^(-5);" "6#)\"#5,$\"\"&!\"\"" }{TEXT -1 2 ", \+ " }{XPPEDIT 18 0 "hstart/2000;" "6#*&%'hstartG\"\"\"\"%+?!\"\"" } {TEXT -1 3 ")\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 263 4 "Note" }{TEXT -1 40 ": hstart must lie between hmin and hm ax." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 10 "ma xsteps=n" }}{PARA 0 "" 0 "" {TEXT -1 188 "The maximum number of steps \+ to be used. An error message results if the maximum number of steps is reached before reaching the end of the solution interval. The default is \"maxsteps=2000\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 10 "tolerance=" }{XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 162 "When the \"errorcontro l\" option is set to \"relative\", the step size is chosen adaptively \+ to try to ensure that the relative error for each step is no greater t han " }{XPPEDIT 18 0 "epsilon;" "6#%(epsilonG" }{TEXT -1 34 ". Other e rror control options use " }{XPPEDIT 18 0 "epsilon;" "6#%(epsilonG" } {TEXT -1 106 " in an appropriate way. See \"errorcontrol\" for more in formation. The default is \"tolerance=10^(-Digits)\".\n" }}{PARA 0 "" 0 "" {TEXT -1 48 "errorcontrol=auto/absolute/relative/accumulative" }} {PARA 0 "" 0 "" {TEXT -1 37 "For the current setting of tolerance=" } {XPPEDIT 18 0 "epsilon" "6#%(epsilonG" }{TEXT -1 72 ", the step size i s chosen to try to ensure that when \"errorcontrol\" is:" }}{PARA 15 "" 0 "" {TEXT -1 12 "auto - " }{XPPEDIT 18 0 "abs(y-y[k]) <= epsi lon*max(abs(y[k]),abs(f(x[k],y[k])*h),tiny);" "6#1-%$absG6#,&%\"yG\"\" \"&F(6#%\"kG!\"\"*&%(epsilonGF)-%$maxG6%-F%6#&F(6#F,-F%6#*&-%\"fG6$&% \"xG6#F,&F(6#F,F)%\"hGF)%%tinyGF)" }{TEXT -1 3 " \n" }}{PARA 15 "" 0 "" {TEXT -1 16 "absolute - " }{XPPEDIT 18 0 "abs(y-y[k]) <= epsil on*abs(max(y[max],tiny));" "6#1-%$absG6#,&%\"yG\"\"\"&F(6#%\"kG!\"\"*& %(epsilonGF)-F%6#-%$maxG6$&F(6#F3%%tinyGF)" }{TEXT -1 9 " , where " } {XPPEDIT 18 0 "y[max];" "6#&%\"yG6#%$maxG" }{TEXT -1 202 " is updated \+ as the computation progresses, with an initial estimate provided by th e option \"maxvalue\".\nThis error control option would be an appropri ate choice if the solution is oscillatory in nature.\n" }}{PARA 15 "" 0 "" {TEXT -1 17 "relative - " }{XPPEDIT 18 0 "abs(y-y[k]) <= ep silon*max(abs(y[k]),tiny);" "6#1-%$absG6#,&%\"yG\"\"\"&F(6#%\"kG!\"\"* &%(epsilonGF)-%$maxG6$-F%6#&F(6#F,%%tinyGF)" }{TEXT -1 169 " \nThis is a general purpose choice except that problems would arise if y is clo se to 0. If this is likely to happen it would be better to use the def ault option \"auto\".\n" }}{PARA 15 "" 0 "" {TEXT -1 20 "accumulative \+ - " }{XPPEDIT 18 0 "abs(y-y[k]) <= epsilon*max(abs(f(x[k],y[k])*h ),tiny);" "6#1-%$absG6#,&%\"yG\"\"\"&F(6#%\"kG!\"\"*&%(epsilonGF)-%$ma xG6$-F%6#*&-%\"fG6$&%\"xG6#F,&F(6#F,F)%\"hGF)%%tinyGF)" }{TEXT -1 2 " \+ " }}{PARA 15 "" 0 "" {TEXT -1 92 "This is the most stringent error co ntrol option, which attempts to control the global error." }}{PARA 0 " " 0 "" {TEXT -1 10 "\"tiny\" is " }{XPPEDIT 18 0 "10^(-3*Digits);" "6# )\"#5,$*&\"\"$\"\"\"%'DigitsGF(!\"\"" }{TEXT -1 60 ", and is included \+ to avoid the possibility of division by 0." }}{PARA 0 "" 0 "" {TEXT -1 35 "The default is \"errorcontrol=auto\"." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 10 "maxvalue=a" }}{PARA 0 "" 0 "" {TEXT -1 90 "This is only used in the case where the \"errorcontrol\" \+ option has been set to \"absolute\". " }}{PARA 0 "" 0 "" {TEXT -1 82 " If no value is provided, the maximum value is updated as the computati on procedes." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 263 16 "How to activate:" } {TEXT 261 1 "\n" }{TEXT -1 157 "To make the procedures active open the subsections, place the cursor anywhere after the prompt [ > and pres s [Enter].\nYou can then close up the subsections." }}{PARA 0 "" 0 "" {TEXT 263 4 "Note" }{TEXT -1 46 ": All twelve procedures must be activ ated for " }{TEXT 0 9 "desolveRK" }{TEXT -1 39 " to work in all approp riate situations." }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 25 "desolveRK: i mplementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "desolveRK" {MPLTEXT 1 0 19523 "desolveRK := proc() \n local ff, vars,derivs,x,yx,y,df,dff,Options,mthd,PIA,\n rg,de,ic,lsic,rsic,x0, y0,tt,rng,z,outpt,stps,lftstps,\n rghtstps,drv,lftprt,rghtprt,revers e,saveDigits,lft,rght,\n startopts,xx,yy,ee,arg2OK,stpsz,adptv,dblrk ,nvars;\n\nreverse := proc(lst::list)\n local n,i;\n n := nops(lst );\n [seq(lst[n-i],i=0..n-2)];\nend proc:\n \ndblrk := proc(lft::r ealcons,rght::realcons,x0::realcons,\n lftprc::procedure,rghtprc ::procedure)\n proc(x::realcons)\n local left,right,leftproc,ri ghtproc,xx0,xx,saveDigits;\n options `Copyright 2007 by Peter Sto ne`;\n \n leftproc := lftprc;\n rightproc := rghtprc;\n \+ \n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits )),Digits+5);\n\n xx0 := evalf(x0);\n left := evalf(lft);\n \+ right := evalf(rght);\n xx := evalf(x);\n\n if xx<=righ t and xx>=xx0 then\n Digits := saveDigits;\n return ri ghtproc(xx);\n elif xx>=left and xx<=xx0 then\n Digits := saveDigits;\n return leftproc(xx);\n else\n erro r \"argument must be between %1 and %2\",left,right; \n end if; \n end proc;\nend proc: # of dblrk\n\n # start of main procedure d esolveRK\n if nargs>0 then \n ff := args[1]\n else\n err or \"at least one argument must be supplied\"\n end if;\n if type( ff,\{set(equation),list(equation)\}) and nops(ff)=2 then\n ff := \+ map(_u -> if has(_u,D) then convert(_u,diff) else _u end if,ff);\n \+ de := op(1,ff);\n ic := op(2,ff);\n if not has(de,diff) th en\n de := op(2,ff);\n ic := op(1,ff);\n end if; \n else\n error \"the 1st argument, %1, is invalid .. it should be a set (or list) of 2 equations\",ff;\n end if;\n\n startopts : = 3;\n if nargs>1 then\n ee := args[2];\n if type(ee,range ) or type(ee,name=range) then\n rng := ee;\n else\n \+ arg2OK := true;\n if type(ee,function) and nops(ee)=1 then \n yy := op(0,ee);\n xx := op(1,ee);\n \+ if type(xx,name) and type(yy,name) then\n startopts := 4;\n if nargs>2 then\n rng := args[3]; \n else\n error \"expecting a 3rd argum ent\"\n end if;\n else\n arg2OK := false;\n end if;\n else\n arg2OK := \+ false;\n end if;\n if not arg2OK then\n err or \"2nd argument, %1, has incorrect form for the dependent variable\" ,ee; \n end if;\n end if;\n else\n error \"expect ing a 2nd argument\"\n end if;\n\n stps := 20;\n adptv := true; \n outpt := 'rkinterp';\n mthd := 'rk67';\n Options :=[];\n if nargs>=startopts then\n Options:=[args[startopts..nargs]];\n \+ if not type(Options,list(equation)) then\n error \"each opti onal argument must be an equation\"\n end if;\n if hasoption (Options,'method','mthd') then\n if not member(mthd,\{'euler', 'impeuler','rk2','rk2a','rk2b','rk3','rk3a',\n 'rk3b','rk 3c','rk3d','rk3e','rk3f','rk4','rk4a','rk4b','rk4c','rk4d',\n \+ 'rk4e','rk4f','rk4g','rk4h','rk4k','rk5','rk5a','rk5b','rk5c','rk 5d',\n 'rk5e','rk6','rk6a','rk6b','rk6c','rk6d','rk7','rk 7a','rk7b','rk7c',\n 'rk8','rk8a','rk8b','rk8c','rk8d','r k9','rk9a','rk9b','rk9c','rk10',\n 'rk10a','rk10b','rk45' ,'rk45b','rk56','rk56b','rk56c','rk67','rk67b',\n 'rk78', 'rk78b','rk78c','rk78d','rk89','rk89b','rk910'\})\n then\n \+ error \"\\\"method\\\" must be one the fixed step-size methods : 'euler','impeuler','rk2','rk2a','rk2b','rk3','rk3a','rk3b','rk3c','r k3d','rk3e','rk3f','rk4','rk4a','rk4b','rk4c','rk4d','rk4e','rk4f','rk 4g','rk4h','rk4k','rk5','rk5a','rk5b','rk5c','rk5d','rk5e','rk6','rk6a ','rk6b','rk6c','rk6d','rk7','rk7a','rk7b','rk7c','rk8','rk8a','rk8b', 'rk8c','rk8d','rk9','rk9a','rk9b','rk9c','rk10','rk10a','rk10b', or on e of the variable step-size (adaptive) methods: 'rk45','rk45b','rk56', 'rk56b','rk56c','rk67','rk67b','rk78','rk78b','rk78c','rk78d','rk89',' rk89b','rk910'\"\n end if;\n if member(mthd,\{rk10,rk1 0a,rk10b\}) and Digits>500 then\n WARNING(\"The coefficient s for an order 10 Runge-Kutta method have a maximum precision of 500 d igits\");\n end if;\n end if;\n if hasoption(Options ,'adaptive','adptv','Options') then\n if not member(adptv,\{tr ue,false\}) then\n error \"\\\"adaptive\\\" must be 'true' \+ or 'false'\"\n end if;\n elif hasoption(Options,'stepsize ','stpsz','Options') then\n if not member(stpsz,\{'fixed','var iable'\}) then\n error \"\\\"stepsize\\\" must be 'fixed' o r 'variable'\"\n end if;\n if stpsz='fixed' then adptv := false end if;\n else\n if hasoption(Options,'method', 'mthd') then\n if not member(mthd,\{'rk45','rk45b','rk56',' rk56b','rk56c','rk67',\n 'rk67b','rk78','rk78b','rk78c ','rk78d','rk89','rk89b','rk910'\})\n then \n \+ adptv := false\n else\n if not member(mthd, \{'rk45','rk45b','rk56','rk56b','rk56c','rk67',\n \+ 'rk67b','rk78','rk78b','rk78c','rk89'\})\n then \n outpt := 'rkstep'\n end if;\n \+ end if;\n elif hasoption(Options,'alpha') then adptv := f alse\n end if; \n end if;\n if not adptv then outpt \+ := 'points' end if;\n if hasoption(Options,'output','outpt') then \n if not member(outpt,\{'points','discrete','rkstep','rkinter p','continuous','procedure'\}) then\n error \"\\\"output\\ \" must be one of 'points','discrete','continuous','rkstep','rkinterp' or 'procedure'\"\n end if;\n if outpt='discrete' then outpt := 'points' end if;\n PIA := \{'rk45','rk45b','rk56','r k56b','rk56c','rk67','rk67b','rk78',\n \+ 'rk78b','rk78c','rk89'\};\n ## Use poly nomial interpolation by default, when available\n if outpt='co ntinuous' or outpt='procedure' and member(mthd,PIA) then \n \+ outpt := 'rkinterp' else outpt := 'rkstep' end if;\n if ad ptv and not member(mthd,PIA) and outpt='rkinterp' then\n e rror \"when \\\"method\\\" is %1, \\\"output\\\" cannot be 'rkinterp', but must be one of 'points','discrete' or 'rkstep'\",mthd;\n \+ end if; \n end if;\n if not adptv then\n if hasopti on(Options,'steps','stps') then\n if not type(stps,'posint' ) then\n error\"\\\"steps\\\" must be a positive integer \"\n end if;\n end if;\n else # use adaptive \+ step-size\n if hasoption(Options,'steps') then\n er ror\"\\\"steps\\\" is not a valid option when adaptive step-size contr ol is used\"\n end if;\n if hasoption(Options,'method' ,'mthd') then\n if not member(mthd,\{'rk45','rk45b','rk56', 'rk56b','rk56c','rk67',\n 'rk67b','rk78','rk78b','rk 78c','rk78d','rk89','rk89b','rk910'\})\n then\n \+ error \"\\\"method\\\" must be 'rk45','rk45b','rk56','rk56b','rk56c ','rk67','rk67b','rk78','rk78b','rk78c' ,'rk78d','rk89','rk89b' or 'rk 910'\"\n end if;\n Options := convert(\{op(Optio ns)\} minus \{method=mthd\},list);\n end if;\n end if;\n \+ end if;\n\n derivs := indets(de,'specfunc(anything,diff)');\n if derivs=\{\} then\n error \"the 1st argument, %1, is invalid .. i t should be a set (or list) containing a differential equation and an \+ initial condition\",ff;\n end if;\n nvars := nops(indets(derivs,'n ame'));\n if nvars<>1 then\n if nvars=0 then\n error \" there is a problem with the independent variable occurring in the deri vative(s)\";\n else\n error \"there should only be one in dependent variable in the differential equation\"\n end if;\n e nd if;\n nvars := nops(indets(derivs,'anyfunc(name)'));\n if nvars <>1 then\n if nvars=0 then\n error \"there is a problem w ith the dependent variable occurring in the derivative(s)\"\n els e\n error \"there should only be one dependent variable in the differential equation\"\n end if;\n end if;\n\n if nops(deri vs)<>1 then\n error \"there are too many derivatives in the diffe rential equation .. note that the differential equation must be of ord er 1\"\n end if;\n df := op(1,derivs);\n if type(df,function) an d op(0,df)=diff and nops(df)=2 then\n yx := op(1,df);\n if n ot type(yx,anyfunc(name)) then\n error \"the 1st argument %1, \+ in the derivative, %2, is invalid .. it should be the 'unknown' depend ent variable\",yx,df;\n end if; \n x := op(2,df);\n if \+ not type(x,name) then\n error \"the 2nd argument %1, in the de rivative, %2, is invalid .. it should be the dependent variable\",x,df ;\n end if; \n else\n error \"the derivative, %1, does not make sense\",df;\n end if;\n\n y := op(0,yx);\n vars := indets( de,name);\n if member(y,vars) then\n error \"%1 and %2 cannot b oth appear in the differential equation\",yx,y;\n end if;\n if op( 1,yx)<>x then\n error \"the derivative, %1, does not make sense\" ,df;\n end if;\n\n if startopts=4 then \n if x<>xx or y<>yy t hen\n error \"cannot solve the differential equation for %1\", ee;\n end if;\n end if;\n \n lsic := lhs(ic);\n if type(lsi c,function) and op(0,lsic)=y and nops(lsic)=1 \n \+ and type(op(1,lsic),algebraic) then\n x0 := op(1,lsic);\n \+ else\n error \"the initial condition is not decipherable\"\n \+ end if;\n rsic := rhs(ic);\n if type(rsic,realcons) then\n y0 := rsic;\n else\n error \"the initial condition is not deciphe rable\"\n end if;\n\n if type(rng,equation) then\n z := op(1, rng);\n if not type(z,name) or z<>x then\n error \"left s ide, %1, of equation for solution range must be the independent variab le\",x;\n end if;\n rg := op(2,rng);\n else\n rg := r ng;\n end if;\n\n if not type(rg,realcons..realcons) then\n e rror \"the range for the solution must have real end values\"\n end \+ if;\n\n lft := op(1,rg);\n rght := op(2,rg);\n \n if signum(rg ht-lft)=0 then\n error \"the range for the solution must have dis tinct end points\"\n end if;\n if signum(rght-lft)<0 then # swap \+ over\n tt := lft; lft := rght; rght := tt; \n end if;\n if s ignum(x0-rght)>0 or signum(x0-lft)<0 then\n error \"the range for the solution must contain the initial value of the independent variab le\"\n end if; \n\n drv := rhs(isolate(de,df));\n if nops([drv] )<>1 then\n error \"cannot obtain a unique expression for the deri vative\"\n end if;\n drv := subs(yx=y,drv);\n\n if not adptv the n\n if signum(x0-lft)=0 then\n return rungk(drv,x=x0..rgh t,y=y0,op(Options));\n elif signum(x0-rght)=0 then\n retu rn rungk(drv,x=x0..lft,y=y0,op(Options));\n else\n lftstp s := trunc(evalf((x0-lft)/(rght-lft)*stps,Digits+5));\n rghtst ps := stps-lftstps;\n Options := convert(\{op(Options)\} minus \{steps=stps\},list);\n rghtprt := rungk(drv,x=x0..rght,y=y0, steps=rghtstps,op(Options));\n lftprt := rungk(drv,x=x0..lft,y =y0,steps=lftstps,op(Options));\n if outpt='rkstep' then\n \+ return dblrk(lft,rght,x0,lftprt,rghtprt);\n else\n \+ return [op(reverse(lftprt)),op(rghtprt)];\n end if;\n \+ end if;\n else # use adaptive step-size\n if mthd='rk45' t hen\n if signum(x0-lft)=0 then\n return rungk45(drv ,x=x0..rght,y=y0,op(Options));\n elif signum(x0-rght)=0 then\n return rungk45(drv,x=x0..lft,y=y0,op(Options));\n \+ else\n rghtprt := rungk45(drv,x=x0..rght,y=y0,op(Options)); \n lftprt := rungk45(drv,x=x0..lft,y=y0,op(Options));\n \+ if outpt='rkstep' or outpt='rkinterp' then\n ret urn dblrk(lft,rght,x0,lftprt,rghtprt);\n else\n \+ return [op(reverse(lftprt)),op(rghtprt)];\n end if;\n \+ end if;\n elif mthd='rk45b' then\n if signum(x0-lft )=0 then\n return rungk45b(drv,x=x0..rght,y=y0,op(Options)) ;\n elif signum(x0-rght)=0 then\n return rungk45b(d rv,x=x0..lft,y=y0,op(Options));\n else\n rghtprt := rungk45b(drv,x=x0..rght,y=y0,op(Options));\n lftprt := run gk45b(drv,x=x0..lft,y=y0,op(Options));\n if outpt='rkstep' \+ or outpt='rkinterp' then\n return dblrk(lft,rght,x0,lftp rt,rghtprt);\n else\n return [op(reverse(lftp rt)),op(rghtprt)];\n end if;\n end if;\n elif \+ mthd='rk56' then\n if signum(x0-lft)=0 then\n retur n rungk56(drv,x=x0..rght,y=y0,op(Options))\n elif signum(x0-rg ht)=0 then\n return rungk56(drv,x=x0..lft,y=y0,op(Options)) \n else\n rghtprt := rungk56(drv,x=x0..rght,y=y0,op (Options));\n lftprt := rungk56(drv,x=x0..lft,y=y0,op(Optio ns));\n if outpt='rkstep' or outpt='rkinterp' then\n \+ return dblrk(lft,rght,x0,lftprt,rghtprt);\n else\n \+ return [op(reverse(lftprt)),op(rghtprt)];\n e nd if;\n end if;\n elif mthd='rk56b' then\n if si gnum(x0-lft)=0 then\n return rungk56b(drv,x=x0..rght,y=y0,o p(Options))\n elif signum(x0-rght)=0 then\n return \+ rungk56b(drv,x=x0..lft,y=y0,op(Options))\n else\n r ghtprt := rungk56b(drv,x=x0..rght,y=y0,op(Options));\n lftp rt := rungk56b(drv,x=x0..lft,y=y0,op(Options));\n if outpt= 'rkstep' or outpt='rkinterp' then\n return dblrk(lft,rgh t,x0,lftprt,rghtprt);\n else\n return [op(rev erse(lftprt)),op(rghtprt)];\n end if;\n end if;\n \+ elif mthd='rk56c' then\n if signum(x0-lft)=0 then\n \+ return rungk56c(drv,x=x0..rght,y=y0,op(Options))\n elif s ignum(x0-rght)=0 then\n return rungk56c(drv,x=x0..lft,y=y0, op(Options))\n else\n rghtprt := rungk56c(drv,x=x0. .rght,y=y0,op(Options));\n lftprt := rungk56c(drv,x=x0..lft ,y=y0,op(Options));\n if outpt='rkstep' or outpt='rkinterp' then\n return dblrk(lft,rght,x0,lftprt,rghtprt);\n \+ else\n return [op(reverse(lftprt)),op(rghtprt)]; \n end if;\n end if;\n elif mthd='rk67' then\n if signum(x0-lft)=0 then\n return rungk67(drv,x=x0 ..rght,y=y0,op(Options))\n elif signum(x0-rght)=0 then\n \+ return rungk67(drv,x=x0..lft,y=y0,op(Options))\n else\n \+ rghtprt := rungk67(drv,x=x0..rght,y=y0,op(Options));\n \+ lftprt := rungk67(drv,x=x0..lft,y=y0,op(Options));\n \+ if outpt='rkstep' or outpt='rkinterp' then\n return dbl rk(lft,rght,x0,lftprt,rghtprt);\n else\n retu rn [op(reverse(lftprt)),op(rghtprt)];\n end if;\n e nd if;\n elif mthd='rk67b' then\n if signum(x0-lft)=0 the n\n return rungk67b(drv,x=x0..rght,y=y0,op(Options))\n \+ elif signum(x0-rght)=0 then\n return rungk67b(drv,x=x0. .lft,y=y0,op(Options))\n else\n rghtprt := rungk67b (drv,x=x0..rght,y=y0,op(Options));\n lftprt := rungk67b(drv ,x=x0..lft,y=y0,op(Options));\n if outpt='rkstep' or outpt= 'rkinterp' then\n return dblrk(lft,rght,x0,lftprt,rghtpr t);\n else\n return [op(reverse(lftprt)),op(r ghtprt)];\n end if;\n end if;\n elif mthd='rk7 8' then\n if signum(x0-lft)=0 then\n return rungk78 (drv,x=x0..rght,y=y0,op(Options))\n elif signum(x0-rght)=0 the n\n return rungk78(drv,x=x0..lft,y=y0,op(Options))\n \+ else\n rghtprt := rungk78(drv,x=x0..rght,y=y0,op(Options) );\n lftprt := rungk78(drv,x=x0..lft,y=y0,op(Options));\n \+ if outpt='rkstep' or outpt='rkinterp' then\n r eturn dblrk(lft,rght,x0,lftprt,rghtprt);\n else\n \+ return [op(reverse(lftprt)),op(rghtprt)];\n end if;\n \+ end if;\n elif mthd='rk78b' then\n if signum(x0-l ft)=0 then\n return rungk78b(drv,x=x0..rght,y=y0,op(Options ))\n elif signum(x0-rght)=0 then\n return rungk78b( drv,x=x0..lft,y=y0,op(Options))\n else\n rghtprt := rungk78b(drv,x=x0..rght,y=y0,op(Options));\n lftprt := run gk78b(drv,x=x0..lft,y=y0,op(Options));\n if outpt='rkstep' \+ or outpt='rkinterp' then\n return dblrk(lft,rght,x0,lftp rt,rghtprt);\n else\n return [op(reverse(lftp rt)),op(rghtprt)];\n end if;\n end if;\n elif \+ mthd='rk78c' then\n if signum(x0-lft)=0 then\n retu rn rungk78c(drv,x=x0..rght,y=y0,op(Options))\n elif signum(x0- rght)=0 then\n return rungk78c(drv,x=x0..lft,y=y0,op(Option s))\n else\n rghtprt := rungk78c(drv,x=x0..rght,y=y 0,op(Options));\n lftprt := rungk78c(drv,x=x0..lft,y=y0,op( Options));\n if outpt='rkstep' or outpt='rkinterp' then\n \+ return dblrk(lft,rght,x0,lftprt,rghtprt);\n el se\n return [op(reverse(lftprt)),op(rghtprt)];\n \+ end if;\n end if;\n elif mthd='rk78d' then\n \+ if signum(x0-lft)=0 then\n return rungk78d(drv,x=x0..rght,y =y0,op(Options))\n elif signum(x0-rght)=0 then\n re turn rungk78d(drv,x=x0..lft,y=y0,op(Options))\n else\n \+ rghtprt := rungk78d(drv,x=x0..rght,y=y0,op(Options));\n \+ lftprt := rungk78d(drv,x=x0..lft,y=y0,op(Options));\n if o utpt='rkstep' then\n return dblrk(lft,rght,x0,lftprt,rgh tprt);\n else\n return [op(reverse(lftprt)),o p(rghtprt)];\n end if;\n end if;\n elif mthd=' rk89' then \n if signum(x0-lft)=0 then\n return rung k89(drv,x=x0..rght,y=y0,op(Options))\n elif signum(x0-rght)=0 \+ then\n return rungk89(drv,x=x0..lft,y=y0,op(Options))\n \+ else\n rghtprt := rungk89(drv,x=x0..rght,y=y0,op(Optio ns));\n lftprt := rungk89(drv,x=x0..lft,y=y0,op(Options)); \n if outpt='rkstep' or outpt='rkinterp' then\n \+ return dblrk(lft,rght,x0,lftprt,rghtprt);\n else\n \+ return [op(reverse(lftprt)),op(rghtprt)];\n end if ;\n end if;\n elif mthd='rk89b' then\n if signum( x0-lft)=0 then\n return rungk89b(drv,x=x0..rght,y=y0,op(Opt ions))\n elif signum(x0-rght)=0 then\n return rungk 89b(drv,x=x0..lft,y=y0,op(Options))\n else\n rghtpr t := rungk89b(drv,x=x0..rght,y=y0,op(Options));\n lftprt := rungk89b(drv,x=x0..lft,y=y0,op(Options));\n if outpt='rkst ep' then\n return dblrk(lft,rght,x0,lftprt,rghtprt);\n \+ else\n return [op(reverse(lftprt)),op(rghtprt) ];\n end if;\n end if;\n else # mthd='rk910' t hen\n if signum(x0-lft)=0 then\n return rungk910(dr v,x=x0..rght,y=y0,op(Options))\n elif signum(x0-rght)=0 then\n return rungk910(drv,x=x0..lft,y=y0,op(Options))\n \+ else\n rghtprt := rungk910(drv,x=x0..rght,y=y0,op(Options)) ;\n lftprt := rungk910(drv,x=x0..lft,y=y0,op(Options));\n \+ if outpt='rkstep' then\n return dblrk(lft,rght ,x0,lftprt,rghtprt);\n else\n return [op(reve rse(lftprt)),op(rghtprt)];\n end if;\n end if;\n \+ end if; \n end if;\nend proc:" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" } }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 21 "rungk: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 311520 "rungk := proc(fxy::algebraic,xrng::(name=realcons..realcons),i y::(name=realcons)) \n local x0,xn,y0,soln,xk,yk,k,xmax,h,x,y,fn,gn, xrg,\n c1,c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE,cF,cG,cH,a21,a31,a3 2,a41,a42,\n a43,a51,a52,a53,a54,a61,a62,a63,a64,a65,a71,a72,a73,a74 ,a75,a76,a81,\n a82,a83,a84,a85,a86,a87,a91,a93,a94,a95,a96,a97,a98, aA1,aA3,aA4,aA5,\n aA6,aA7,aA8,aA9,aB1,aB4,aB5,aB6,aB7,aB8,aB9,aBA,a C1,aC4,aC5,aC6,aC7,\n aC8,aC9,aCA,aCB,aD1,aD4,aD5,aD6,aD7,aD8,aD9,aD A,aDC,aDB,aE1,aE6,aE7,\n aE8,aE9,aEA,aEB,aEC,aED,aF1,aF6,aF7,aF8,aF9 ,aFA,aFB,aFC,aFD,aFE,aG1,\n aG6,aG7,aG8,aG9,aGA,aGB,aGC,aGD,aGE,aGF, aH1,aH8,aH9,aHA,aHB,aHC,aHD,aHE,aHF,\n aHG,aI1,aI8,aI9,aIA,aIB,aIC,a ID,aIE,aIF,aIG,aIH,f1,f2,f3,f4,f5,f6,f7,\n f8,f9,fA,fB,fC,fD,fE,fF,f G,fH,fI,b1,b2,b3,b4,b5,b6,b7,b8,b9,bA,bB,bC,\n bD,bE,bF,bG,bH,bI,r,r 1,r2,r3,k1,k2,k3,k4,k5,k6,k7,h1,h2,h3,hh,hk1,hk2,\n hk3,hk4,h13,h23, h14,h34,k13,SQRT3,SQRT5,SQRT6,SQRT7,SQRT21,SQRT33,SQRT,\n saveDigits ,Options,stps,mthd,j,i,prntflg,s,t,c,eulerstep,impeulerstep,\n rk2st ep,rk3step,rk3bstep,rk3cstep,rk3dstep,rk3estep,rk3fstep,rk4step,\n r k4bstep,rk4cstep,rk4dstep,rk4estep,rk4fstep,rk4gstep,rk4hstep,rk4kstep ,\n rk5step,rk5cstep,rk5dstep,rk6step,rk6cstep,rk6dstep,rk7step,rk7b step,\n rk7cstep,rk8step,rk8bstep,rk8cstep,rk8dstep,rk9step,rk9bstep ,rk9cstep,\n rk10step,customrk2step,outpt,eqns;\n\neulerstep := proc (x_eulerstep::realcons)\n local xk,yk,jF,jM,jS,n,h,\n data,fn,xx,y s,saveDigits;\n options `Copyright 2005 by Peter Stone`;\n \n da ta := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalh f(Digits)),Digits+5);\n\n # procedure to evaluate the slope field\n \+ fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(F XY_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDi gits);\n end if;\n val;\n end proc;\n\n xx := evalf(x _eulerstep);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable i s outside the interpolation interval: %1\",evalf(data[1,1])..evalf(dat a[n,1]);\n end if;\n\n # Perform a binary search for the interval \+ containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n i f data[1,1]1 do\n jM := trun c((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM e nd if;\n end do;\n if jM = n then jF := n-1; jS := n end if; \n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \+ \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk; \n ys := yk + h*fn(xk,yk);\n Digits := saveDigits;\n evalf(ys); \nend proc: # of eulerstep\n\nimpeulerstep := proc(x_impeulerstep::rea lcons)\n local xk,yk,jF,jM,jS,n,h,k1,k2,\n data,fn,xx,ys,saveDigit s;\n options `Copyright 2002 by Peter Stone`;\n \n data := SOLN_ ;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)), Digits+5);\n\n # procedure to evaluate the slope field\n fn := pro c(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \"ev aluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_impeulerst ep);\n n := nops(data);\n\n if (data[1,1]data[n ,1] or xxdata[1,1])) then\n error \"independent variable is outsid e the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]); \n end if;\n\n # Perform a binary search for the interval containi ng x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1 ,1]1 do\n jM := trunc((jF+jS )/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n els e\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Ge t the data needed from the list.\n xk := data[jF,1];\n yk := data[ jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n k1 := h*fn(xk,yk);\n k2 := h*fn(xk + h,yk + k1);\n ys := yk + (k1 + k2) /2;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of impeulers tep\n\nrk2step := proc(x_rk2step::realcons)\n local xk,yk,jF,jM,jS,n ,h,hh,k1,\n data,fn,xx,ys,saveDigits;\n options `Copyright 2002 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n \+ Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to e valuate the slope field\n fn := proc(X_,Y_)\n local val; \n \+ val := traperror(evalf(FXY_));\n if val=lasterror or not type(v al,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk2step);\n n := nops(data);\n\n if (da ta[1,1]data[n,1] or xxdata[1,1])) then\n error \+ \"independent variable is outside the interpolation interval: %1\",eva lf(data[1,1])..evalf(data[n,1]);\n end if;\n\n # Perform a binary \+ search for the interval containing x.\n n := nops(data);\n jF := 0 ;\n jS := n+1;\n\n if data[1,1] 1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then \+ jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM \+ := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS \+ := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n \+ end if;\n end if;\n \n # Get the data needed from the list.\n x k := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-s ize ..\n h := xx-xk;\n hh := h/2;\n k1 := hh*fn(xk,yk);\n ys : = yk + h*fn(xk + hh,yk + k1);\n Digits := saveDigits;\n evalf(ys); \nend proc: # of rk2step\n\ncustomrk2step := proc(x_customrk2step::rea lcons)\n local xk,yk,jF,jM,jS,n,h,f1,f2,s,t,c,\n data,fn,xx,ys,sav eDigits;\n options `Copyright 2002 by Peter Stone`;\n \n data := SOLN_;\n c := ALPH_;\n\n saveDigits := Digits;\n Digits := max( trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the slo pe field\n fn := proc(X_,Y_)\n local val; \n val := traper ror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) the n\n error \"evaluation of slope field failed at %1\",evalf([X_ ,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_customrk2step);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"indepen dent variable is outside the interpolation interval: %1\",evalf(data[1 ,1])..evalf(data[n,1]);\n end if;\n\n # Perform a binary search fo r the interval containing x.\n n := nops(data);\n jF := 0;\n jS \+ := n+1;\n\n if data[1,1]1 do\n \+ jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM \+ else jS := jM end if;\n end do;\n if jM = n then jF := n-1; \+ jS := n end if;\n else\n while jS-jF>1 do\n jM := trunc( (jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xk := data [jF,1];\n yk := data[jF,2];\n\n t := 1/(2*c);\n s := 1 - t;\n\n \+ # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk); \n f2 := fn(xk + c*h,yk + c*f1*h);\n ys := yk + h*(s*f1 + t*f2);\n Digits := saveDigits;\n evalf(ys);\nend proc: # of customrk2step \n\nrk3step := proc(x_rk3step::realcons)\n local xk,yk,jF,jM,jS,n,h, k1,k2,k3,\n data,fn,xx,ys,saveDigits;\n options `Copyright 2002 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n \+ Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to e valuate the slope field\n fn := proc(X_,Y_)\n local val; \n \+ val := traperror(evalf(FXY_));\n if val=lasterror or not type(v al,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk3step);\n n := nops(data);\n\n if (da ta[1,1]data[n,1] or xxdata[1,1])) then\n error \+ \"independent variable is outside the interpolation interval: %1\",eva lf(data[1,1])..evalf(data[n,1]);\n end if;\n\n # Perform a binary \+ search for the interval containing x.\n n := nops(data);\n jF := 0 ;\n jS := n+1;\n\n if data[1,1] 1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then \+ jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM \+ := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS \+ := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n \+ end if;\n end if;\n \n # Get the data needed from the list.\n x k := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-s ize ..\n h := xx-xk;\n k1 := h*fn(xk,yk);\n k2 := h*fn(xk+h/2,yk + k1/2);\n k3 := h*fn(xk+h,yk - k1 + 2*k2);\n ys := yk + (k1 + 4* k2 + k3)/6;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of r k3step\n\nrk3bstep := proc(x_rk3bstep::realcons)\n local xk,yk,jF,jM ,jS,n,h,h13,h32,f1,f2,f3,\n data,fn,xx,ys,saveDigits;\n options `C opyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigit s := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n \+ # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n l ocal val; \n val := traperror(evalf(FXY_));\n if val=lasterr or or not type(val,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n \+ val;\n end proc;\n\n xx := evalf(x_rk3bstep);\n n := nops(da ta);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) t hen\n error \"independent variable is outside the interpolation i nterval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n # \+ Perform a binary search for the interval containing x.\n n := nops(d ata);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx> =data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then \+ jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed fro m the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n h13 := h/3;\n h23 := h13 *2;\n f1 := fn(xk,yk);\n f2 := fn(xk + h13,yk + h13*f1);\n f3 := fn(xk + h23,yk + h23*f2);\n ys := yk + (f1 + 3*f3)*h/4;\n Digits \+ := saveDigits;\n evalf(ys);\nend proc: # of rk3bstep\n\nrk3cstep := \+ proc(x_rk3cstep::realcons)\n local xk,yk,jF,jM,jS,n,h,c2,c3,a21,a31, a32,b1,b2,b3,f1,f2,f3,\n data,fn,xx,ys,saveDigits;\n options `Copy right 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits : = Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # p rocedure to evaluate the slope field\n fn := proc(X_,Y_)\n loca l val; \n val := traperror(evalf(FXY_));\n if val=lasterror \+ or not type(val,numeric) then\n error \"evaluation of slope fi eld failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n va l;\n end proc;\n\n xx := evalf(x_rk3cstep);\n n := nops(data) ;\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then \n error \"independent variable is outside the interpolation inte rval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; a21 := c2; a31 := a31_; a32 := a32_;\n b1 := b1_; b 2 := b2_; b3 := 0.46875;\n\n # Perform a binary search for the inter val containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := \+ trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := \+ jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2); \n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n end if; \n \n # Get the data needed from the list.\n xk := data[jF,1];\n \+ yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx- xk;\n f1 := fn(xk,yk);\n f2 := fn(xk + c2*h,yk + a21*f1*h);\n f3 := fn(xk + c3*h,yk + (a31*f1 + a32*f2)*h);\n ys := yk + (b1*f1 + b2 *f2 + b3*f3)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # \+ of rk3cstep\n\nrk3dstep := proc(x_rk3dstep::realcons)\n local xk,yk, jF,jM,jS,n,h,c2,c3,a21,a31,a32,f1,f2,f3,\n data,fn,xx,ys,saveDigits; \n options `Copyright 2004 by Peter Stone`;\n \n data := SOLN_; \n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),D igits+5);\n\n # procedure to evaluate the slope field\n fn := proc (X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \"eva luation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_rk3dstep); \n n := nops(data);\n\n if (data[1,1]data[n,1] \+ or xxdata[1,1])) then\n error \"independent variable is outside th e interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n \+ end if;\n\n c2 := c2_; c3 := c3_; a21 := c2; a31 := a31_; a32 := a3 2_;\n\n # Perform a binary search for the interval containing x.\n \+ n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n \+ if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n \+ while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data [jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the dat a needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n \n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,y k);\n f2 := fn(xk + c2*h,yk + a21*f1*h);\n f3 := fn(xk + c3*h,yk + (a31*f1 + a32*f2)*h);\n ys := yk + (f1 + 3*f3)*h/4;\n Digits := s aveDigits;\n evalf(ys);\nend proc: # of rk3dstep\n\nrk3estep := proc (x_rk3estep::realcons)\n local xk,yk,jF,jM,jS,n,h,c2,c3,a21,a31,a32, b1,b2,b3,f1,f2,f3,\n data,fn,xx,ys,saveDigits;\n options `Copyrigh t 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Di gits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # proce dure to evaluate the slope field\n fn := proc(X_,Y_)\n local va l; \n val := traperror(evalf(FXY_));\n if val=lasterror or n ot type(val,numeric) then\n error \"evaluation of slope field \+ failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk3estep);\n n := nops(data);\n \n if (data[1,1]data[n,1] or xxdata[1,1])) then\n \+ error \"independent variable is outside the interpolation interva l: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2 _; c3 := c3_; a21 := c2; a31 := a31_; a32 := c2;\n b1 := b1_; b2 := \+ b2_; b3 := c2;\n\n # Perform a binary search for the interval contai ning x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data [1,1]1 do\n jM := trunc((jF+ jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if; \n end do;\n if jM = n then jF := n-1; jS := n end if;\n e lse\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # \+ Get the data needed from the list.\n xk := data[jF,1];\n yk := dat a[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 \+ := fn(xk,yk);\n f2 := fn(xk + c2*h,yk + a21*f1*h);\n f3 := fn(xk + c3*h,yk + (a31*f1 + a32*f2)*h);\n ys := yk + (b1*f1 + b2*f2 + b3*f3 )*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk3estep \n\nrk3fstep := proc(x_rk3fstep::realcons)\n local xk,yk,jF,jM,jS,n, h,h23,f1,f2,f3,\n data,fn,xx,ys,saveDigits;\n options `Copyright 2 004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digit s;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedur e to evaluate the slope field\n fn := proc(X_,Y_)\n local val; \+ \n val := traperror(evalf(FXY_));\n if val=lasterror or not \+ type(val,numeric) then\n error \"evaluation of slope field fai led at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n \+ end proc;\n\n xx := evalf(x_rk3fstep);\n n := nops(data);\n\n \+ if (data[1,1]data[n,1] or xxdata[1,1])) then\n \+ error \"independent variable is outside the interpolation interval: % 1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := 0.5; c 3 := c3_; a21 := c2; a31 := a31_; a32 := a32_;\n b1 := b1_; b2 := b2 _; b3 := c2;\n\n # Perform a binary search for the interval containi ng x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1 ,1]1 do\n jM := trunc((jF+jS )/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n els e\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Ge t the data needed from the list.\n xk := data[jF,1];\n yk := data[ jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n f2 := fn(xk + c2*h,yk + a21*f1*h);\n f3 := fn(xk + c 3*h,yk + (a31*f1 + a32*f2)*h);\n ys := yk + (b1*f1 + b2*f2 + b3*f3)* h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk3fstep\n \nrk4step := proc(x_rk4step::realcons)\n local xk,yk,jF,jM,jS,n,h,hh ,hk1,hk2,k3,hk4,\n data,fn,xx,ys,saveDigits;\n options `Copyright \+ 2002 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digi ts;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedu re to evaluate the slope field\n fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n error \"evaluation of slope field fa iled at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n \+ end proc;\n\n xx := evalf(x_rk4step);\n n := nops(data);\n\n \+ if (data[1,1]data[n,1] or xxdata[1,1])) then\n \+ error \"independent variable is outside the interpolation interval: % 1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n # Perform a \+ binary search for the interval containing x.\n n := nops(data);\n \+ jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1 ] then jF := jM else jS := jM end if;\n end do;\n if jM = n \+ then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n \+ jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM e lse jS := jM end if;\n end do;\n if jM = n then jF := n-1; j S := n end if;\n end if;\n \n # Get the data needed from the list .\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n hh := h/2;\n hk1 := hh*fn(xk,yk); \n hk2 := hh*fn(xk + hh,yk + hk1);\n k3 := h*fn(xk + hh,yk + hk2); \n hk4 := hh*fn(xk + h,yk + k3);\n ys := yk + (hk1 + hk2 + hk2 + k 3 + hk4)/3;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of r k4step\n\nrk4bstep := proc(x_rk4bstep::realcons)\n local xk,yk,jF,jM ,jS,n,h,hh,hk1,hk2,hk3,hk4,\n data,fn,xx,ys,saveDigits;\n options \+ `Copyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDig its := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n \+ # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n \+ local val; \n val := traperror(evalf(FXY_));\n if val=laste rror or not type(val,numeric) then\n error \"evaluation of slo pe field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n \+ val;\n end proc;\n\n xx := evalf(x_rk4bstep);\n n := nops( data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable is outside the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n \+ # Perform a binary search for the interval containing x.\n n := nops (data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if \+ xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n else\n while jS- jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] th en jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed \+ from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n r := \+ evalf[Digits+3](sqrt(2));\n r1 := 2-r;\n r2 := 2+r;\n r3 := r-1; \n \n # Do one step with step-size ..\n h := xx-xk;\n hh := h/ 2;\n hk1 := hh*fn(xk,yk);\n hk2 := hh*fn(xk + hh,yk + hk1);\n hk 3 := hh*fn(xk + hh,yk + r3*hk1 + r1*hk2);\n hk4 := hh*fn(xk + h,yk - r*hk2 + r2*hk3);\n ys := yk + (hk1 + r1*hk2 + r2*hk3 + hk4)/3;\n \+ Digits := saveDigits;\n evalf(ys);\nend proc: # of rk4bstep\n\nrk4cs tep := proc(x_rk4cstep::realcons)\n local xk,yk,jF,jM,jS,n,h,h13,k1, k2,k3,k4,k13,\n data,fn,xx,ys,saveDigits;\n options `Copyright 200 4 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits; \n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure \+ to evaluate the slope field\n fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not ty pe(val,numeric) then\n error \"evaluation of slope field faile d at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n \+ end proc;\n\n xx := evalf(x_rk4cstep);\n n := nops(data);\n\n i f (data[1,1]data[n,1] or xxdata[1,1])) then\n e rror \"independent variable is outside the interpolation interval: %1 \",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n # Perform a b inary search for the interval containing x.\n n := nops(data);\n j F := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n t hen jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n \+ jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM el se jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list. \n xk := data[jF,1];\n yk := data[jF,2];\n \n # Do one step wi th step-size ..\n h := xx-xk;\n h13 := h/3;\n h23 := 2*h13; \n \+ k1 := h*fn(xk,yk);\n k13 := k1/3;\n k2 := h*fn(xk + h13,yk + k13) ;\n k3 := h*fn(xk + h23,yk + k2 - k13);\n k4 := h*fn(xk + h,yk + k 1 - k2 + k3);\n ys := yk + (k1 + 3*k2 + 3*k3 + k4)/8;\n Digits := \+ saveDigits;\n evalf(ys);\nend proc: # of rk4cstep\n\nrk4dstep := pro c(x_rk4dstep::realcons)\n local xk,yk,jF,jM,jS,n,h,c2,c3,a21,a31,a32 ,a41,a42,a43,\n b1,b2,b3,b4,f1,f2,f3,f4,t,data,fn,xx,ys,saveDigits; \n options `Copyright 2004 by Peter Stone`;\n \n data := SOLN_; \n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),D igits+5);\n\n # procedure to evaluate the slope field\n fn := proc (X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \"eva luation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_rk4dstep); \n n := nops(data);\n\n if (data[1,1]data[n,1] \+ or xxdata[1,1])) then\n error \"independent variable is outside th e interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n \+ end if;\n\n c2 := 0.4; c3 := c3_; a21 := c2; a31 := a31_; a32 := a3 2_;\n a41 := a41_; a42 := a42_; a43 := a43_; \n b1 := b1_; b2 := b 2_; b3 := b3_; b4 := b4_;\n\n # Perform a binary search for the inte rval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n \n if data[1,1]1 do\n jM : = trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS : = jM end if;\n end do;\n if jM = n then jF := n-1; jS := n e nd if;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2 );\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n end if ;\n \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n \n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,y k + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h); \n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + h,yk + t*h);\n \+ ys := yk + (b1*f1 + b2*f2 + b3*f3 + b4*f4)*h;\n Digits := saveDigi ts;\n evalf(ys);\nend proc: # of rk4dstep\n\nrk4estep := proc(x_rk4e step::realcons)\n local xk,yk,jF,jM,jS,n,h,c2,c3,a21,a31,a32,a41,a42 ,a43,\n b1,b2,b3,b4,f1,f2,f3,f4,t,data,fn,xx,ys,saveDigits;\n opti ons `Copyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n sa veDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5); \n\n # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val= lasterror or not type(val,numeric) then\n error \"evaluation o f slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if; \n val;\n end proc;\n\n xx := evalf(x_rk4estep);\n n := \+ nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1 ,1])) then\n error \"independent variable is outside the interpol ation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n \n c2 := c2_; c3 := c3_; a21 := c2; a31 := a31_; a32 := a32_;\n a4 1 := a41_; a42 := a42_; a43 := a43_; \n b1 := b1_; b2 := b2_; b3 := \+ b3_; b4 := 0.1625;\n\n # Perform a binary search for the interval co ntaining x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if \+ data[1,1]1 do\n jM := trunc( (jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end d o;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n \+ # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n \n # Do one step with step-size ..\n h := xx-xk; \n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h );\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t \+ := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + h,yk + t*h);\n ys := yk + (b1*f1 + b2*f2 + b3*f3 + b4*f4)*h;\n Digits := saveDigits;\n \+ evalf(ys);\nend proc: # of rk4estep\n\nrk4fstep := proc(x_rk4fstep::r ealcons)\n local xk,yk,jF,jM,jS,n,h,c2,c3,a21,a31,a32,a41,a42,a43,\n b1,b2,b3,b4,f1,f2,f3,f4,t,data,fn,xx,ys,saveDigits;\n options `Co pyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigit s := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n \+ # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n l ocal val; \n val := traperror(evalf(FXY_));\n if val=lasterr or or not type(val,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n \+ val;\n end proc;\n\n xx := evalf(x_rk4fstep);\n n := nops(da ta);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) t hen\n error \"independent variable is outside the interpolation i nterval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := 0.4; c3 := 0.6; a21 := c2; a31 := -0.15; a32 := 0.75;\n a41 := a 41_; a42 := a42_; a43 := a43_;\n b1 := b1_; b2 := b2_; b3 := b2; b4 \+ := b1;\n\n # Perform a binary search for the interval containing x. \n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2); \n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n \+ while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<= data[jM,1] then jF := jM else jS := jM end if;\n end do;\n i f jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2] ;\n \n # Do one step with step-size ..\n h := xx-xk;\n f1 := f n(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := \+ a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + h,yk + t*h);\n ys := yk + (b1*f1 + b2*f2 + b3*f3 + b4*f4)*h;\n Digits := saveDigits;\n evalf(ys); \nend proc: # of rk4fstep\n\nrk4gstep := proc(x_rk4gstep::realcons)\n \+ local xk,yk,jF,jM,jS,n,h,c2,c3,c4,a21,a32,a41,a42,a43,a51,a52,\n a 53,a54,b1,b3,b4,b5,f1,f2,f3,f4,f5,t,data,fn,xx,ys,saveDigits;\n opti ons `Copyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n sa veDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5); \n\n # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val= lasterror or not type(val,numeric) then\n error \"evaluation o f slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if; \n val;\n end proc;\n\n xx := evalf(x_rk4gstep);\n n := \+ nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1 ,1])) then\n error \"independent variable is outside the interpol ation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n \n c2 := 0.2; c3 := 0.4; c4 := 0.8; a21 := c2; a32 := c3; a41 := 1.2 ; \n a42 := -2.4; a43 := 2.0; a51 := -2.125; a52 := 5.0; a53 := -2.5 ;\n a54 := 0.625; b1 := b1_; b3 := b3_; b4 := b4_; b5 := b5_; \n\n \+ # Perform a binary search for the interval containing x.\n n := nop s(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if \+ xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n else\n while jS- jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] th en jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed \+ from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n \n # \+ Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n \+ t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54* f4;\n f5 := fn(xk + h,yk + t*h);\n ys := yk + (b1*f1 + b3*f3 + b4* f4 + b5*f5)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # o f rk4gstep\n\nrk4hstep := proc(x_rk4hstep::realcons)\n local xk,yk,j F,jM,jS,n,h,c2,c3,c4,a21,a31,a32,a41,a42,a43,a51,a52,\n a53,a54,b1,b 2,b3,b4,b5,f1,f2,f3,f4,f5,t,data,fn,xx,ys,saveDigits;\n options `Cop yright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n lo cal val; \n val := traperror(evalf(FXY_));\n if val=lasterro r or not type(val,numeric) then\n error \"evaluation of slope \+ field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n \+ val;\n end proc;\n\n xx := evalf(x_rk4hstep);\n n := nops(dat a);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) th en\n error \"independent variable is outside the interpolation in terval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 \+ := 0.2; c3 := c3_; c4 := c4_; a21 := c2; a31 := a31_; \n a32 := a32_ ; a41 := a41_; a42 := a42_; a43 := a43_;\n a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_;\n b1 := b1_; b2 := b2_; b3 := b3_; b4 := \+ b4_; b5 := b5_;\n\n # Perform a binary search for the interval conta ining x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if dat a[1,1]1 do\n jM := trunc((jF +jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if ;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n \+ else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do; \n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n \+ # Get the data needed from the list.\n xk := data[jF,1];\n yk := d ata[jF,2];\n \n # Do one step with step-size ..\n h := xx-xk;\n \+ f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h); \n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + h,yk + t*h);\n \+ ys := yk + (b1*f1 + b2*f2 + b3*f3 + b4*f4 + b5*f5)*h;\n Digits := s aveDigits;\n evalf(ys);\nend proc: # of rk4hstep\n\nrk4kstep := proc (x_rk4kstep::realcons)\n local xk,yk,jF,jM,jS,n,h,c2,c3,c4,a21,a31,a 32,a41,a42,a43,a51,a52,\n a53,a54,b1,b2,b3,b4,b5,f1,f2,f3,f4,f5,t,da ta,fn,xx,ys,saveDigits;\n options `Copyright 2007 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n Digits := max( trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the slo pe field\n fn := proc(X_,Y_)\n local val; \n val := traper ror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) the n\n error \"evaluation of slope field failed at %1\",evalf([X_ ,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk4kstep);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent \+ variable is outside the interpolation interval: %1\",evalf(data[1,1]). .evalf(data[n,1]);\n end if;\n\n c2 := 0.2; c3 := c3_; c4 := c4_; \+ a21 := c2; a31 := a31_; \n a32 := a32_; a41 := a41_; a42 := a42_; a4 3 := a43_;\n a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_;\n \+ b1 := b1_; b3 := b3_; b4 := b4_; b5 := b5_;\n\n # Perform a binary \+ search for the interval containing x.\n n := nops(data);\n jF := 0 ;\n jS := n+1;\n\n if data[1,1] 1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then \+ jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM \+ := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS \+ := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n \+ end if;\n end if;\n \n # Get the data needed from the list.\n x k := data[jF,1];\n yk := data[jF,2];\n \n # Do one step with ste p-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 \+ := fn(xk + h,yk + t*h);\n ys := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5) *h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk4kstep \n\n## Prince-Dormand, modified PD, stage-order 3\nrk5step := proc(x_r k5step::realcons)\n local c2,c3,c4,c5,a21,a31,a32,a41,a42,a43,a51,a5 2,a53,a54,\n a61,a62,a63,a64,a65,a71,a73,a74,a75,a76,f1,f2,f3,f4,f5, \n f6,b1,b3,b4,b5,b6,\n xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDig its;\n options `Copyright 2004 by Peter Stone`;\n \n data := SOL N_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits) ),Digits+5);\n\n # procedure to evaluate the slope field\n fn := p roc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \" evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_rk5step) ;\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable is outside th e interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n \+ end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; a21 := c2; \n a31 := a31_; a32 := a32_; a41 := a41_; a42 := a42_; a43 := a43_; \n a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_;\n a61 := a6 1_; a62 := a62_; a63 := a63_; a64 := a64_; a65 := a65_;\n b1 := b1_; b3 := b3_; b4 := b4_; b5 := b5_; b6 := b6_;\n\n # Perform a binary \+ search for the interval containing x.\n n := nops(data);\n jF := 0 ;\n jS := n+1;\n\n if data[1,1] 1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then \+ jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n \+ xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step- size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 : = fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + \+ c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c 4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := f n(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a6 5*f5;\n f6 := fn(xk + h,yk + t*h);\n\n ys := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6)*h;\n Digits := saveDigits;\n evalf(ys);\ne nd proc: # of rk5step\n\nrk5cstep := proc(x_rk5cstep::realcons) ## But cher\n local xk,yk,jF,jM,jS,n,h,h14,h34,k1,k2,k3,k4,k5,k6,\n data, fn,xx,ys,saveDigits;\n options `Copyright 2004 by Peter Stone`;\n \+ \n data := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trun c(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the slope f ield\n fn := proc(X_,Y_)\n local val; \n val := traperror( evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_] ,saveDigits);\n end if;\n val;\n end proc;\n\n xx := \+ evalf(x_rk5cstep);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent vari able is outside the interpolation interval: %1\",evalf(data[1,1])..eva lf(data[n,1]);\n end if;\n\n # Perform a binary search for the int erval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n \n if data[1,1]1 do\n jM : = trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS : = jM end if;\n end do;\n if jM = n then jF := n-1; jS := n e nd if;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2 );\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n end if ;\n \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n \n # Do one step with step-size ..\n h := xx-xk;\n h14 := h/4;\n h34 := 3*h14; \n\n k1 := h*fn(xk,yk);\n \+ k2 := h*fn(xk + h14,yk + k1/4);\n k3 := h*fn(xk + h14,yk + (k1 + k 2)/8);\n k4 := h*fn(xk + h/2,yk - k2/2 + k3);\n k5 := h*fn(xk + h3 4,yk + (3*k1 + 9*k4)/16);\n k6 := h*fn(xk + h,yk - (3*k1 - 2*k2 - 12 *k3 + 12*k4 - 8*k5)/7);\n ys := yk + (7*k1 + 32*k3 + 12*k4 + 32*k5 \+ + 7*k6)/90;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of r k5bstep\n\nrk5dstep := proc(x_rk5dstep::realcons) ## Fehlberg\n loca l c2,c3,c4,c5,a21,a31,a32,a41,a42,a43,a51,\n a52,a53,a54,a61,a62,a63 ,a64,a65,a71,a73,a74,a75,a76,\n f1,f2,f3,f4,f5,f6,b1,b3,b4,b5,b6,\n \+ xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Copyrigh t 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Di gits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # proce dure to evaluate the slope field\n fn := proc(X_,Y_)\n local va l; \n val := traperror(evalf(FXY_));\n if val=lasterror or n ot type(val,numeric) then\n error \"evaluation of slope field \+ failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk5dstep);\n n := nops(data);\n \n if (data[1,1]data[n,1] or xxdata[1,1])) then\n \+ error \"independent variable is outside the interpolation interva l: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := 0. 25; c3 := 0.375; c4 := c4_; c6 := 0.5;\n a21 := c2;\n a31 := 0.093 75; a32 := 0.28125;\n a41 := a41_; a42 := a42_; a43 := a43_;\n a51 := a51_; a52 := -8.0; a53 := a53_; a54 := a54_;\n a61 := a61_; a62 \+ := 2.0; a63 := a63_; a64 := a64_; a65 := -.275;\n b1 := b1_; b3 := b 3_; b4 := b4_; b5 := -0.18; b6 := b6_;\n\n # Perform a binary search for the interval containing x.\n n := nops(data);\n jF := 0;\n \+ jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := \+ jM else jS := jM end if;\n end do;\n if jM = n then jF := n- 1; jS := n end if;\n else\n while jS-jF>1 do\n jM := tru nc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM \+ end if;\n end do;\n if jM = n then jF := n-1; jS := n end if ;\n end if;\n \n # Get the data needed from the list.\n xk := d ata[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size .. \n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4*h,yk \+ + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + \+ h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n \+ f6 := fn(xk + c6*h,yk + t*h);\n ys := yk + (b1*f1 + b3*f3 + b4*f4 + \+ b5*f5 + b6*f6)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: \+ # of rk5step\n\nrk6step := proc(x_rk6step::realcons)\n local c2,c3,c 4,c5,c6,c7,a21,a31,a32,a41,a42,a43,a51,a52,\n a53,a54,a61,a62,a63,a6 4,a65,a71,a72,a73,a74,a75,a76,a81,\n a82,a83,a84,a85,a86,a87,f1,f2,f 3,f4,f5,f6,f7,f8,b1,b3,b4,\n b5,b6,b7,b8,xk,yk,t,jF,jM,jS,n,h,data,f n,xx,ys,saveDigits;\n options `Copyright 2004 by Peter Stone`;\n \+ \n data := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trun c(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the slope f ield\n fn := proc(X_,Y_)\n local val; \n val := traperror( evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_] ,saveDigits);\n end if;\n val;\n end proc;\n\n xx := \+ evalf(x_rk6step);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent varia ble is outside the interpolation interval: %1\",evalf(data[1,1])..eval f(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7_;\n a21 := c2; a31 := a31_; a32 := a32_;\n a41 := a41_; a42 := a42_; a43 := a43_;\n a51 := a51_; a52 := a52_ ; a53 := a53_; a54 := a54_;\n a61 := a61_; a62 := a62_; a63 := a63_; a64 := a64_; a65 := a65_;\n a71 := a71_; a72 := a72_; a73 := a73_; \+ a74 := a74_; a75 := a75_;\n a76 := a76_; a81 := a81_; a82 := a82_; a 83 := a83_;\n a84 := a84_; a85 := a85_; a86 := a86_; a87 := a87_;\n \+ b1 := b1_; b3 := b3_; b4 := b4_; b5 := b5_; b6 := b6_; b7 := b7_; b8 := b8_;\n\n # Perform a binary search for the interval containing x .\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]< data[n,1] then\n while jS-jF>1 do\n jM := trunc((jF+jS)/2) ;\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n \+ while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx< =data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get th e data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2 ];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn( xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a3 1*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42 *f2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52* f2 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f 1 + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h );\n t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f 7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a82*f2 + a83*f3 + a84*f 4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + h,yk + t*h);\n\n ys \+ := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8)*h;\n\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk6step\n\nrk6 cstep := proc(x_rk6cstep::realcons)\n local c2,c3,c4,c5,c6,c7,a21,a3 1,a32,a41,a43,a51,a53,a54,\n a61,aa63,a64,a65,a71,a73,a74,a75,a76,a8 1,a83,a84,\n a85,a86,a87,f1,f2,f3,f4,f5,f6,f7,f8,b1,b4,b6,b7,b8,xk,y k,t,\n jF,jM,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Copyright 2007 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Dig its;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # proced ure to evaluate the slope field\n fn := proc(X_,Y_)\n local val ; \n val := traperror(evalf(FXY_));\n if val=lasterror or no t type(val,numeric) then\n error \"evaluation of slope field f ailed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n \+ end proc;\n\n xx := evalf(x_rk6cstep);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n \+ error \"independent variable is outside the interpolation interval: \+ %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := 0.125 ; c3 := c3_; c4 := 0.25; c5 := 0.5; c6 := 0.6; c7 := 0.8;\n a21 := c 2; a31 := a31_; a32 := a32_; a41 := 0.0625; a43 := 0.1875;\n a51 := \+ 0.25; a53 := -0.75; a54 := 1; a61 := 0.2144;\n a63 := -0.5328; a64 : = 0.7616; a65 := 0.1568; a71 := a71_;\n a73 := 0.192e-1; a74 := a74_ ; a75 := a75_; a76 := a76_;\n a81 := 0.18; a83 := 0.84; a84 := a84_; a85 := 2.96;\n a86 := a86_; a87 := a87_; b1 := b1_; b4 := b4_; b6 : = b6_; b7 := b7_;\n b8 := b8_;\n\n # Perform a binary search for t he interval containing x.\n n := nops(data);\n jF := 0;\n jS := \+ n+1;\n\n if data[1,1]1 do\n \+ jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM els e jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS \+ := n end if;\n else\n while jS-jF> 1 do\n jM := trunc((j F+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end i f;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n \+ end if;\n \n # Get the data needed from the list.\n xk := data[j F,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n \+ h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2 *h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t* h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t \+ := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t : = a61*f1 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h); \n t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk \+ + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 \+ + a87*f7;\n f8 := fn(xk + h,yk + t*h);\n \n ys := yk + (b1 *f1 + b4*f4 + b6*f6 + b7*f7 + b8*f8)*h;\n Digits := saveDigits;\n \+ evalf(ys);\nend proc: # of rk6cstep\n\nrk6dstep := proc(x_rk6dstep::re alcons)\n local c2,c3,c4,c5,c6,a21,a31,a32,a41,a42,a43,a51,\n a52, a53,a54,a61,a62,a63,a64,a65,a71,a72,a73,a74,a75,a76,\n f1,f2,f3,f4,f 5,f6,f7,f8,b1,b5,b6,b7,xk,yk,t,jF,jM,jS,\n n,h,data,fn,xx,ys,saveDig its;\n options `Copyright 2004 by Peter Stone`;\n \n data := SOL N_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits) ),Digits+5);\n\n # procedure to evaluate the slope field\n fn := p roc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \" evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_rk6dstep );\n n := nops(data);\n\n if (data[1,1]data[n,1 ] or xxdata[1,1])) then\n error \"independent variable is outside \+ the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_ ;\n a21 := c2; a31 := a31_; a32 := a32_;\n a41 := a41_; a42 := a42 _; a43 := a43_;\n a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_ ;\n a61 := a61_; a62 := a62_; a63 := a63_; a64 := a64_; a65 := a65_; \n a71 := a71_; a72 := a72_; a73 := a73_; a74 := a74_; a75 := a75_; \n a76 := a76_;\n b1 := b1_; b5 := b5_; b6 := b6_; b7 := b7_;\n\n \+ # Perform a binary search for the interval containing x.\n n := no ps(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n else\n while jS -jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] t hen jF := jM else jS := jM end if;\n end do;\n if jM = n the n jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2 ;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3; \n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + \+ a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a 71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + \+ h,yk + t*h);\n\n ys := yk + (b1*f1 + b5*f5 + b6*f6 + b7*f7)*h;\n\n \+ Digits := saveDigits;\n evalf(ys);\nend proc: # of rk6cstep\n\nrk7s tep := proc(x_rk7step::realcons)\n local c2,c3,c4,c5,c6,c7,c9,a21,a3 1,a32,a41,a43,a51,a53,a54,a61,\n a63,a64,a65,a71,a73,a74,a75,a76,a81 ,a83,a84,a85,a86,a87,aA1,\n a93,a94,a95,a96,a97,a98,f1,f2,f3,f4,f5,f 6,f7,f8,f9,b1,b4,b5,\n b6,b7,b8,b9,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,y s,saveDigits;\n options `Copyright 2007 by Peter Stone`;\n \n da ta := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalh f(Digits)),Digits+5);\n\n # procedure to evaluate the slope field\n \+ fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(F XY_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDi gits);\n end if;\n val;\n end proc;\n\n xx := evalf(x _rk7step);\n n := nops(data);\n\n if (data[1,1] data[n,1] or xxdata[1,1])) then\n error \"independent variable is o utside the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n ,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7_;\n c8 := c8_; a21 := c2; a31 := a31_; a32 := a32_ ; a41 := a41_;\n a43 := 0.1225; a51 := a51_; a53 := a53_; a54 := a54 _; a61 := a61_;\n a63 := a63_; a64 := a64_; a65 := a65_; a71 := a71_ ; a73 := a73_;\n a74 := a74_; a75 := a75_; a76 := a76_; a81 := a81_; a83 := a83_;\n a84 := a84_; a85 := a85_; a86 := a86_; a87 := a87_; \+ a91 := a91_;\n a93 := a93_; a94 := a94_; a95 := a95_; a96 := a96_; a 97 := a97_;\n a98 := a98_; b1 := b1_; b4 := b4_; b5 := b5_; b6 := b6 _; b7 := b7_;\n b8 := b8_; b9 := b9_;\n\n # Perform a binary searc h for the interval containing x.\n n := nops(data);\n jF := 0;\n \+ jS := n+1;\n\n if data[1,1]1 do \n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF : = jM else jS := jM end if;\n end do;\n if jM = n then jF := \+ n-1; jS := n end if;\n else\n while jS-jF> 1 do\n jM := \+ trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := \+ jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xk : = data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn (xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h ,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h) ;\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h); \n t := a61*f1 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,y k + t*h);\n t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 + a85*f 5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f 1 + a93*f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn( xk + h,yk + t*h);\n ys := yk + (b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7*f 7 + b8*f8 + b9*f9)*h;\n Digits := saveDigits;\n evalf(ys);\nend pr oc: # of rk7step\n\nrk7bstep := proc(x_rk7bstep::realcons)\n local c 2,c3,c4,c5,c6,c7,c8,a21,a32,a41,a43,a51,a53,a54,\n a61,a63,a64,a65,a 71,a73,a74,a75,a76,a81,a83,a84,a85,a86,a87,\n a91,a93,a94,a95,a96,a9 7,a98,f1,f2,f3,f4,f5,f6,f7,f8,f9,b1,\n b4,b5,b6,b7,b8,b9,xk,yk,t,jF, jM,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Copyright 2004 by Pet er Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n Dig its := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evalu ate the slope field\n fn := proc(X_,Y_)\n local val; \n va l := traperror(evalf(FXY_));\n if val=lasterror or not type(val,n umeric) then\n error \"evaluation of slope field failed at %1 \",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end pr oc;\n\n xx := evalf(x_rk7bstep);\n n := nops(data);\n\n if (data [1,1]data[n,1] or xxdata[1,1])) then\n error \" independent variable is outside the interpolation interval: %1\",evalf (data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7_; c8 := c8_;\n a21 := c2; a32 := c3; a41 := a41_; a43 := a43_;\n a51 := a51_; a53 := a53_; a5 4 := a54_;\n a61 := a61_; a63 := a63_; a64 := a64_; a65 := a65_;\n \+ a71 := a71_; a73 := a73_; a74 := a74_; a75 := a75_; a76 := a76_;\n \+ a81 := a81_; a83 := a83_; a84 := a84_; a85 := a85_; a86 := a86_; a87 : = a87_;\n a91 := a91_; a93 := a93_; a94 := a94_; a95 := a95_; a96 := a96_; a97 := a97_;\n a98 := a98_; \n b1 := b1_; b4 := b4_; b5 : = b5_; b6 := b6_; b7 := b7_; b8 := b8_; b9 := b9_;\n\n # Perform a b inary search for the interval containing x.\n n := nops(data);\n j F := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n t hen jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n \+ jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM el se jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list. \n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with \+ step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n \+ f2 := fn(xk + c2*h,yk + t*h);\n t := a32*f2;\n f3 := fn(xk + c3*h ,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h) ;\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h); \n t := a61*f1 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 : = fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + \+ a93*f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + h,yk + t*h);\n \n ys := yk + (b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7 *f7 + b8*f8 + b9*f9)*h;\n\n Digits := saveDigits;\n evalf(ys);\nen d proc: # of rk7bstep\n\nrk7cstep := proc(x_rk7cstep::realcons)\n lo cal c2,c3,c4,c5,c6,c7,c8,c9,cA,a21,a31,a32,a41,a43,\n a51,a53,a54,a6 1,a64,a65,a71,a74,a75,a76,a81,a85,a86,a87,\n a91,a94,a95,a96,a97,a98 ,aA1,aA4,aA5,aA6,aA7,aA8,aA9,aB1,\n aB4,aB5,aB6,aB7,aB8,aB9,aBA,f1,f 2,f3,f4,f5,f6,f7,f8,f9,fA,\n fB,b1,b6,b7,b8,b9,bA,bB,xk,yk,t,jF,jM,j S,n,h,data,fn,xx,\n ys,saveDigits;\n options `Copyright 2002 by Pe ter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n Di gits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to eval uate the slope field\n fn := proc(X_,Y_)\n local val; \n v al := traperror(evalf(FXY_));\n if val=lasterror or not type(val, numeric) then\n error \"evaluation of slope field failed at %1 \",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end pr oc;\n\n xx := evalf(x_rk7cstep);\n n := nops(data);\n\n if (data [1,1]data[n,1] or xxdata[1,1])) then\n error \" independent variable is outside the interpolation interval: %1\",evalf (data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := 0.5; c7 := c7_; \n c8 := c4; c9 := c9_; cA := cA_; a21 := c2; a31 := a31_; a32 := a32_;\n a41 := a41_; a43 \+ := 0.125; a51 := c5; a53 := -1.5625; a54 := 1.5625;\n a61 := 0.05; a 64 := 0.25; a65 := 0.2; a71 := a71_; a74 := a74_;\n a75 := a75_; a76 := a76_; a81 := a81_; a85 := a85_; a86 := a86_;\n a87 := a87_; a91 \+ := 2.; a94 := a94_; a95 := a95_; a96 := a96_;\n a97 := a97_; a98 := \+ 3.; aA1 := aA1_; aA4 := aA4_; aA5 := aA5_;\n aA6 := aA6_; aA7 := aA7 _; aA8 := aA8_; aA9 := -a32; aB1 := aB1_;\n aB4 := aB4_; aB5 := aB5_ ; aB6 := aB6_; aB7 := aB7_; aB8 := aB8_;\n aB9 := aB9_; aBA := aBA_; b1 := b1_; b6 := b6_; b7 := b7_;\n b8 := b7; b9 := b9_; bA := b9; b B := b1;\n\n # Perform a binary search for the interval containing x .\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]< data[n,1] then\n while jS-jF>1 do\n jM := trunc((jF+jS)/2) ;\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n \+ while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx< =data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get th e data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2 ];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn( xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a3 1*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43 *f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54* f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f 5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a85*f5 \+ + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f8 \+ + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk \+ + h,yk + t*h);\n ys := yk + (b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk7cstep\n\nrk8step := proc(x_rk8step::realcons)\n local c2,c3 ,c4,c5,c6,c7,c8,c9,cA,cB,a21,a31,a32,a41,a43,a51,a53,a54,\n a61,a63, a64,a65,a71,a74,a75,a76,a81,a84,a85,a86,a87,a91,a94,a95,a96,\n a97,a 98,aA1,aA4,aA5,aA6,aA7,aA8,aA9,aB1,aB4,aB5,aB6,aB7,aB8,aB9,aBA,\n aC 1,aC4,aC5,aC6,aC7,aC8,aC9,aCA,aCB,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,\n \+ fC,b1,b6,b7,b8,b9,bA,bB,bC,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDi gits;\n options `Copyright 2004 by Peter Stone`;\n \n data := SO LN_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits )),Digits+5);\n\n # procedure to evaluate the slope field\n fn := \+ proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n error \+ \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits); \n end if;\n val;\n end proc;\n\n xx := evalf(x_rk8st ep);\n n := nops(data);\n\n if (data[1,1]data[n ,1] or xxdata[1,1])) then\n error \"independent variable is outsid e the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]); \n end if;\n\n c2 := 0.0625; c3 := c3_; c4 := c4_; c5 := c5_; c6 : = c6_; c7 := c7_;\n c8 := c8_; c9 := c9_; cA := cA_; cB :=cB_; a21 : = c2; a31 := a31_;\n a32 := a32_; a41 := a41_; a43 := a43_; a51 := a 51_; a53 := a53_; a54 := a54_;\n a61 := a61_; a64 := a64_; a65 := a6 5_; a71 := a71_; a74 := a74_; a75 := a75_;\n a76 := a76_; a81 := a81 _; a84 := a84_; a85 := a85_; a86 := a86_; a87 := a87_;\n a91 := a91_ ; a94 := a94_; a95 := a95_; a96 := a96_; a97 := a97_; a98 := a98_;\n \+ aA1 := aA1_; aA4 := aA4_; aA5 := aA5_; aA6 := aA6_; aA7 := aA7_; aA8 \+ := aA8_;\n aA9 := aA9_; aB1 := aB1_; aB4 := aB4_; aB5 := aB5_; aB6 : = aB6_; aB7 := aB7_;\n aB8 := aB8_; aB9 := aB9_; aBA := aBA_; aC1 := aC1_; aC4 := aC4_; aC5 := aC5_;\n aC6 := aC6_; aC7 := aC7_; aC8 := \+ aC8_; aC9 := aC9_; aCA := aCA_; aCB := aCB_;\n b1 := b1_; b6 := b6_; b7 := b7_; b8 := b8_; b9 := b9_; bA := bA_; bB := bB_;\n bC := bC_; \n \n # Perform a binary search for the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n \+ if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end d o;\n if jM = n then jF := n-1; jS := n end if;\n else\n wh ile jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[j M,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data \+ needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n \+ # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk); \n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + \+ a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n \+ f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76* f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a84*f4 + a85*f 5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h, yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f 8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(x k + cB*h,yk + t*h);\n t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f 7 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + h,yk + t*h); \n\n # Calculate the intermediate y value.\n t := b1*f1 + b6*f6 + \+ b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC;\n ys := yk + t*h;\n \+ Digits := saveDigits;\n evalf(ys);\nend proc: # of rk8step\n\nrk8cs tep := proc(x_rk8cstep::realcons)\n local c2,c3,c4,c5,c6,c7,c8,c9,cA ,a21,a31,a32,a41,a43,\n a51,a53,a54,a61,a64,a65,a71,a74,a75,a76,a81, a85,a86,a87,\n a91,a94,a95,a96,a97,a98,aA1,aA4,aA5,aA6,aA7,aA8,aA9,a B1,\n aB6,aB7,aB8,aB9,aBA,aC1,aC4,aC5,aC6,aC7,aC8,aC9,aCA,f1,\n f2 ,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC,b6,b7,b8,b9,bA,bB,bC,\n xk,yk,t,jF,jM ,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Copyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n Digit s := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluat e the slope field\n fn := proc(X_,Y_)\n local val; \n val \+ := traperror(evalf(FXY_));\n if val=lasterror or not type(val,num eric) then\n error \"evaluation of slope field failed at %1\", evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc; \n\n xx := evalf(x_rk8cstep);\n n := nops(data);\n\n if (data[1, 1]data[n,1] or xxdata[1,1])) then\n error \"ind ependent variable is outside the interpolation interval: %1\",evalf(da ta[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := 0.5; c7 := c7_;\n c8 := c4; c9 := c9_; cA \+ := cA_; a21 := c2; a31 := a31_; a32 := a32_;\n a41 := a41_; a43 := 0 .125; a51 := c5; a53 := -1.5625; a54 := 1.5625;\n a61 := 0.05; a64 : = 0.25; a65 := 0.2; a71 := a71_; a74 := a74_;\n a75 := a75_; a76 := \+ a76_; a81 := a81_; a85 := a85_; a86 := a86_;\n a87 := a87_; a91 := 2 .; a94 := a94_; a95 := a95_; a96 := a96_;\n a97 := a97_; a98 := 3.; \+ aA1 := aA1_; aA4 := aA4_; aA5 := aA5_;\n aA6 := aA6_; aA7 := aA7_; a A8 := aA8_; aA9 := -a32; aB1 := aB1_;\n aB6 := aB6_; aB7 := -aB1; aB 8 := aB8_; aB9 := -aB8; aBA := -aB6;\n aC1 := aC1_; aC4 := aC4_; aC5 := aC5_; aC6 := aC6_; aC7 := aC7_;\n aC8 := aC8_; aC9 := aC9_; aCA \+ := aCA_; b6 := b6_; b7 := b7_;\n b8 := b7; b9 := b9_; bA := b9; bB : = bB_; bC := bB;\n\n # Perform a binary search for the interval cont aining x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if da ta[1,1]1 do\n jM := trunc((j F+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end i f;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n \+ else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do; \n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n \+ # Get the data needed from the list.\n xk := data[jF,1];\n yk := d ata[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f 1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41* f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f 3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 \+ + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := \+ a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + \+ aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk,yk + t*h); \n t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + fB;\n fC := fn(xk + h,yk + t*h); \n ys := yk + (b6*f6 \+ +b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC)*h;\n Digits := saveD igits;\n evalf(ys);\nend proc: # of rk8cstep\n\nrk8dstep := proc(x_r k8dstep::realcons)\n local c1,c2,c3,a21,a31,a32,a41,a42,a43,a51,a53, a54,a61,a63,a64,\n a65,a71,a73,a74,a75,a76,a81,a85,a86,a87,a91,a95,a 96,a97,a98,aA1,\n aA5,aA6,aA7,aA8,aA9,aB5,aB6,aB7,aB8,aB9,aBA,f1,f2, f3,f4,f5,f6,\n f7,f8,f9,fA,fB,b1,b6,b7,b8,b9,bA,bB,xk,yk,t,jF,jM,jS, n,h,data,\n fn,xx,ys,saveDigits,h1,h2,h3;\n options `Copyright 200 4 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits; \n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure \+ to evaluate the slope field\n fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not ty pe(val,numeric) then\n error \"evaluation of slope field faile d at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n \+ end proc;\n\n xx := evalf(x_rk8dstep);\n n := nops(data);\n\n i f (data[1,1]data[n,1] or xxdata[1,1])) then\n e rror \"independent variable is outside the interpolation interval: %1 \",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c1 := 0.5; c2 := c2_; c3 := c3_; a21 := 0.5; a31 := 0.25; \n a32 := a31; a41 : = a41_; a42 := a42_; a43 := a43_; a51 := a51_;\n a53 := a53_; a54 : = a54_; a61 := a61_; a63 := a63_; a64 := a64_;\n a65 := a65_; a71 := a71_; a73 := a73_; a74 := a74_; a75 := a75_;\n a76 := a76_; a81 := \+ a81_; a85 := a85_; a86 := a86_; a87 := a87_;\n a91 := 0.03125; a95 : = a95_; a96 := a96_; a97 := a97_; a98 := a98_;\n aA1 := a81; aA5 := \+ a87; aA6 := aA6_; aA7 := aA7_; aA8 := aA8_;\n aA9 := aA9_; aB5 := aB 5_; aB6 := aB6_; aB7 := aB7_; aB8 := aB8_;\n aB9 := aB9_; aBA := aBA _; b1 := 0.05; b8 := b8_; b9 := b9_;\n \n # Perform a binary search \+ for the interval containing x.\n n := nops(data);\n jF := 0;\n j S := n+1;\n\n if data[1,1]1 do\n \+ jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := j M else jS := jM end if;\n end do;\n if jM = n then jF := n-1 ; jS := n end if;\n else\n while jS-jF>1 do\n jM := trun c((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM e nd if;\n end do;\n if jM = n then jF := n-1; jS := n end if; \n end if;\n \n # Get the data needed from the list.\n xk := da ta[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size .. \n h := xx-xk;\n h1 := c1*h;\n h2 := c2*h;\n h3 := c3*h;\n f 1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + h1,yk + t*h);\n t := a31*f1+a32*f2;\n f3 := fn(xk + h1,yk + t*h);\n t := a41*f1 + a 42*f2 + a43*f3;\n f4 := fn(xk + h2,yk + t*h);\n t := a51*f1 + a53* f3 + a54*f4;\n f5 := fn(xk + h2,yk + t*h);\n t := a61*f1 + a63*f3 \+ + a64*f4 + a65*f5; \n f6 := fn(xk + h1,yk + t*h);\n t := a71*f1 + \+ a73*f3 + a74*f4 + a75*f5 + a76*f6; \n f7 := fn(xk + h3,yk + t*h);\n \+ t := a81*f1 + a85*f5 + a86*f6 + a87*f7; \n f8 := fn(xk + h3,yk + t *h);\n t := a91*f1 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn (xk + h1,yk + t*h);\n t := aA1*f1 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f 8 + aA9*f9; \n fA := fn(xk + h2,yk + t*h);\n t := aB5*f5 + aB6*f6 \+ + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + h,yk + t*h);\n \+ ys := yk + (b1*f1 + b8*f8 + b9*f9 + b8*fA + b1*fB)*h;\n Digits := \+ saveDigits;\n evalf(ys);\nend proc: # of rk8dstep\n\nrk9step := proc (x_rk9step::realcons)\n local c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE ,cG,a21,a31,a32,a41,a42,\n a43,a51,a53,a54,a61,a64,a65,a71,a74,a75,a 76,a81,a86,a87,a91,a96,a97,\n a98,aA1,aA6,aA7,aA8,aA9,aB1,aB6,aB7,aB 8,aB9,aBA,aC1,aC6,aC7,aC8,aC9,\n aCA,aCB,aD1,aD6,aD7,aD8,aD9,aDA,aDB ,aDC,aE1,aE6,aE7,aE8,aE9,aEA,aEB,\n aEC,aED,aF1,aF6,aF7,aF8,aF9,aFA, aFB,aFC,aFD,aFE,b1,b8,b9,bA,bB,bC,bD,\n bE,bF,f1,f2,f3,f4,f5,f6,f7,f 8,f9,fA,fB,fC,fD,fE,fF,xk,yk,t,jF,jM,jS,\n n,h,data,fn,xx,ys,saveDig its;\n options `Copyright 2007 by Peter Stone`;\n \n data := SOL N_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits) ),Digits+5);\n\n # procedure to evaluate the slope field\n fn := p roc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \" evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_rk9step) ;\n n := nops(data);\n if (data[1,1]data[n,1] o r xxdata[1,1])) then\n error \"independent variable is outside the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n \+ end if;\n\n c2 := 0.04; c3 := c3_; c4 := c4_; c5 := 0.576; c6 := c6_ ; c7 := c7_; c8 := 0.64;\n c9 := 0.48; cA := 0.6754e-1; cB := 0.25; \+ cC := cC_; cD := 0.8115; cE := 0.906;\n a21 := c2; a31 := a31_; a32 \+ := a32_; a41 := a41_; a43 := a43_; a51 := a51_;\n a53 := a53_; a54 : = a54_; a61 := a61_; a64 := a64_; a65 := a65_; a71 := a71_;\n a74 := a74_; a75 := a75_; a76 := a76_; a81 := a81_; a86 := a86_; a87 := a87_ ;\n a91 := 0.7125e-1; a96 := a96_; a97 := a97_; a98 := -0.3375e-1; a A1 := aA1_;\n aA6 := aA6_; aA7 := aA7_; aA8 := aA8_; aA9 := aA9_; aB 1 := aB1_; aB6 := aB6_;\n aB7 := aB7_;aB8 := aB8_; aB9 := aB9_; aBA \+ := aBA_; aC1 := aC1_; aC6 := aC6_;\n aC7 := aC7_; aC8 := aC8_; aC9 : = aC9_; aCA := aCA_; aCB := aCB_; aD1 := aD1_;\n aD6 := aD6_; aD7 := aD7_; aD8 := aD8_; aD9 := aD9_; aDA := aDA_; aDB := aDB_;\n aDC := \+ aDC_; aE1 := aE1_; aE6 := aE6_; aE7 := aE7_; aE8 := aE8_; aE9 := aE9_; \n aEA := aEA_; aEB := aEB_; aEC := aEC_; aED := aED_; aF1 := aF1_; \+ aF6 := aF6_;\n aF7 := aF7_; aF8 := aF8_; aF9 := aF9_; aFA := aFA_; a FB := aFB_; aFC := aFC_;\n aFD := aFD_; aFE := aFE_; b1 := b1_; b8 : = b8_; b9 := b9_; bA := bA_; bB := bB_;\n bC := bC_; bD := bD_; bE : = bE_; bF := bF_;\n # Perform a binary search for the interval conta ining x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if dat a[1,1]1 do\n jM := trunc((jF +jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if ;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n \+ else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do; \n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n \+ # Get the data needed from the list.\n xk := data[jF,1];\n yk := d ata[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f 1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41* f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f 3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 \+ + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + \+ a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := a A1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h); \n t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA; \n fB := fn(xk + cB*h,yk + t*h); \n t := aC1*f1 + aC6*f6 + aC7*f7 \+ + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h); \n t := aD1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 + aE6*f6 \+ + aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + \n \+ aEC*fC + aED*fD;\n fE := fn(xk + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 + aF7*f7 + aF 8*f8 + aF9*f9 + aFA*fA + aFB*fB + \n \+ aFC*fC + aFD*fD + aFE*fE;\n fF := fn(xk + h ,yk + t*h);\n\n # Calculate the intermediate y value.\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE*fE + bF*fF;\n \+ ys := yk + t*h;\n \n Digits := saveDigits;\n evalf(ys);\nend pro c: # of rk9step\n\nrk9bstep := proc(x_rk9bstep::realcons)\n local c2 ,c3,c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE,cF,a21,a31,a32,a41,\n a42,a43,a 51,a53,a54,a61,a64,a65,a71,a74,a75,a76,a81,a86,a87,a91,\n a96,a97,a9 8,aA1,aA6,aA7,aA8,aA9,aB1,aB7,aB8,aB9,aBA,aC1,aC6,aC7,\n aC8,aC9,aCA ,aCB,aD1,aD6,aD7,aD8,aD9,aDA,aDB,aDC,aE1,aE6,aE7,aE8,\n aE9,aEA,aEB, aEC,aED,aF1,aF6,aF7,aF8,aF9,aFA,aFB,aFC,aFD,aFE,aG1,\n aG6,aG7,aG8,a G9,aGA,aGB,aGC,aGD,aGE,aGF,b1,b8,b9,bA,bB,bC,bD,bE,\n bF,bG,f1,f2,f3 ,f4,f5,f6,f7,f8,f9,fA,fB,fC,fD,fE,fF,fG,xk,yk,t,jF,\n jM,jS,n,h,data ,fn,xx,ys,saveDigits;\n options `Copyright 2004 by Peter Stone`;\n \+ \n data := SOLN_;\n\n saveDigits := Digits;\n Digits := max(tru nc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the slope \+ field\n fn := proc(X_,Y_)\n local val; \n val := traperror (evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_ ],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk9bstep);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent var iable is outside the interpolation interval: %1\",evalf(data[1,1])..ev alf(data[n,1]);\n end if;\n\n c2 := 0.1; c3 := c3_; c4 := 0.2; c5 \+ := c5_; c6 := c6_; c7 := c7_;\n c8 := 0.8; c9 := 0.6; cA := 0.4; cB \+ := 0.875; cC := 0.11; cD := 0.32;\n cE := cE_; cF := cF_;\n a21 := c2; a31 := a31_; a32 := a32_; a41 := .5e-1; a43 := .15;\n a51 := a5 1_; a53 := a53_; a54 := a54_; a61 := a61_; a64 := a64_; a65 := a65_;\n a71 := a71_; a74 := a74_; a75 := a75_; a76 := a76_; a81 := a81_; a8 6 := a86_;\n a87 := a87_; a91 := a91_; a96 := a96_; a97 := a97_; a98 := a98_; aA1 := aA1_;\n aA6 := aA6_; aA7 := aA7_; aA8 := aA8_; aA9 \+ := aA9_; aB1 := aB1_; aB7 := aB7_;\n aB8 := aB8_; aB9 := aB9_; aBA : = aBA_; aC1 := aC1_; aC6 := aC6_; aC7 := aC7_;\n aC8 := aC8_; aC9 := aC9_; aCA := aCA_; aCB := aCB_; aD1 := aD1_; aD6 := aD6_;\n aD7 := \+ aD7_; aD8 := aD8_; aD9 := aD9_; aDA := aDA_; aDB := aDB_; aDC := aDC_; \n aE1 := aE1_; aE6 := aE6_; aE7 := aE7_; aE8 := aE8_; aE9 := aE9_; \+ aEA := aEA_;\n aEB := aEB_; aEC := aEC_; aED := aED_; aF1 := aF1_; a F6 := aF6_; aF7 := aF7_;\n aF8 := aF8_; aF9 := aF9_; aFA := aFA_; aF B := aFB_; aFC := aFC_; aFD := aFD_;\n aFE := aFE_; aG1 := aG1_; aG6 := aG6_; aG7 := aG7_; aG8 := aG8_; aG9 := aG9_;\n aGA := aGA_; aGB \+ := aGB_; aGC := aGC_; aGD := aGD_; aGE := aGE_; aGF := aGF_; \n b1 : = b1_; b8 := b8_; b9 := b9_; bA := bA_; bB := bB_; bC := bC_;\n bD : = bD_; bE := bE_; bF := bF_; bG := bG_;\n\n # Perform a binary searc h for the interval containing x.\n n := nops(data);\n jF := 0;\n \+ jS := n+1;\n\n if data[1,1]1 do \n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF : = jM else jS := jM end if;\n end do;\n if jM = n then jF := \+ n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM := t runc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := j M end if;\n end do;\n if jM = n then jF := n-1; jS := n end \+ if;\n end if;\n \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size \+ ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn( xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h, yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h); \n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h); \n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h); \n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk \+ + t*h);\n t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + \+ c9*h,yk + t*h);\n t := aA1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h); \n t := aB1*f1 + aB7*f7 + aB8*f8 + \+ aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h); \n t := aC1*f1 + \+ aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n t := aD1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn(xk + cD*h,yk + t*h);\n t := \+ aE1*f1 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + \n \+ aEC*fC + a ED*fD;\n fE := fn(xk + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 \+ + aF7*f7 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + aFC*fC +\n \+ aFD*fD + aFE*fE;\n fF := fn(xk + cF*h,yk + t*h);\n t := aG1*f1 + aG6*f6 + aG7*f7 + a G8*f8 + aG9*f9 + aGA*fA + aGB*fB + \n \+ aGC*fC + aGD*fD + aGE*fE + aGF*fF;\n fG := fn(xk + h,y k + t*h);\n\n # Calculate the intermediate y value.\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bF*fF + bE*fE + bG*fG ;\n ys := yk + t*h;\n\n Digits := saveDigits;\n evalf(ys);\nend \+ proc: # of rk9bstep\n\nrk9cstep := proc(x_rk9cstep::realcons)\n loca l c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE,a21,a31,a32,a41,a42,\n a43, a51,a53,a54,a61,a64,a65,a71,a74,a75,a76,a81,a86,a87,a91,a96,\n a97,a 98,aA1,aA6,aA7,aA8,aA9,aB1,aB7,aB8,aB9,aBA,aC1,aC6,aC7,aC8,\n aC9,aC A,aCB,aD1,aD6,aD7,aD8,aD9,aDA,aDB,aDC,aE1,aE6,aE7,aE8,aE9,\n aEA,aEB ,aEC,aED,aF1,aF6,aF7,aF8,aF9,aFA,aFB,aFC,aFD,aFE,b1,b8,b9,\n bA,bB,b C,bD,bE,bF,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC,fD,fE,fF,\n xk,yk,t,j F,jM,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Copyright 2004 by P eter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n D igits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to eva luate the slope field\n fn := proc(X_,Y_)\n local val; \n \+ val := traperror(evalf(FXY_));\n if val=lasterror or not type(val ,numeric) then\n error \"evaluation of slope field failed at % 1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end p roc;\n\n xx := evalf(x_rk9cstep);\n n := nops(data);\n\n if (dat a[1,1]data[n,1] or xxdata[1,1])) then\n error \+ \"independent variable is outside the interpolation interval: %1\",eva lf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3 _; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7_;\n c8 := c8_; c9 := 0. 5; cA := cA_; cB := 0.25; cC := cC_; cD := cD_; cE := c4;\n a21 := c 2; a31 := a31_; a32 := a32_; a41 := a41_; a43 := 0.125;\n a51 := a51 _; a53 := a53_; a54 := a54_; a61 := a61_; a64 := a64_; a65 := a65_;\n \+ a71 := a71_; a74 := a74_; a75 := a75_; a76 := a76_; a81 := a81_; a86 := a86_;\n a87 := a87_; a91 := a91_; a96 := a96_; a97 := a97_; a98 \+ := a98_; aA1 := aA1_;\n aA6 := aA6_; aA7 := aA7_; aA8 := -0.0625; aA 9 := aA9_; aB1 := aB1_; aB7 := aB7_;\n aB8 := aB8_; aB9 := aB9_; aBA := aBA_; aC1 := aC1_; aC6 := aC6_; aC7 := aC7_;\n aC8 := aC8_; aC9 \+ := aC9_; aCA := aCA_; aCB := aCB_; aD1 := aD1_; aD6 := aD6_;\n aD7 : = aD7_; aD8 := aD8_; aD9 := aD9_; aDA := aDA_; aDB := aDB_; aDC := aDC _;\n aE1 := aE1_; aE6 := aE6_; aE7 := aE7_; aE8 := aE8_; aE9 := aE9_ ; aEA := aEA_;\n aEB := aEB_; aEC := aEC_; aED := aED_; aF1 := aF1_; aF6 := aF6_; aF7 := aF7_;\n aF8 := aF8_; aF9 := aF9_; aFA := aFA_; \+ aFB := aFB_; aFC := aFC_; aFD := aFD_;\n aFE := aFE_; b1 := b1_; b8 \+ := b8_; b9 := b9_; bA := bA_; bB := bB_; bC := bC_;\n bD := bD_; bE \+ := bE_; bF := bF_; \n\n # Perform a binary search for the interval c ontaining x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc ((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM en d if;\n end do;\n if jM = n then jF := n-1; jS := n end if; \n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \+ \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk; \n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h );\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t : = a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + \+ a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a 74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a8 1*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91 *f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n \+ t := aA1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA* h,yk + t*h); \n t := aB1*f1 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n \+ fB := fn(xk + cB*h,yk + t*h); \n t := aC1*f1 + aC6*f6 + aC7*f7 + aC 8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n \+ t := aD1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + a DC*fC;\n fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 + aE6*f6 + aE 7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + \n \+ aEC*fC + aED*fD;\n fE := fn( xk + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 + aF7*f7 + aF8*f8 + \+ aF9*f9 + aFA*fA + aFB*fB + aFC*fC +\n \+ aFD*fD + aFE*fE;\n fF := fn(xk + h,y k + t*h);\n\n # Calculate the intermediate y value.\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE*fE + bF*fF;\n ys := yk + t*h;\n\n Digits := saveDigits;\n evalf(ys);\nend proc: # \+ of rk9cstep\n\nrk10step := proc(x_rk10step::realcons)\n local c2,c3, c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE,cF,cG,cH,a21,a31,a32,a41,\n a43,a51 ,a53,a54,a61,a64,a65,a71,a74,a75,a76,a81,a86,a87,a91,a96,a97,a98,aA1, \n aA6,aA7,aA8,aA9,aB1,aB6,aB7,aB8,aB9,aC1,aC8,aC9,aCA,aCB,aD1,aD8,a D9,aDA,aDB,\n aDC,aE1,aE8,aE9,aEA,aEB,aEC,aED,aF1,aF8,aF9,aFA,aFB,aF C,aFD,aFE,aG1,aG8,aG9,\n aGA,aGB,aGC,aGD,aGE,aGF,aH1,aH8,aH9,aHA,aHB ,aHC,aHD,aHE,aHF,aHG,aI1,aI8,aI9,\n aIA,aIB,aIC,aID,aIE,aIF,aIG,aIH, f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC,fD,fE,\n fF,fG,fH,fI,b1,bC,bD,bE ,bF,bG,bH,bI,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,\n saveDigits;\n o ptions `Copyright 2007 by Peter Stone`;\n \n data := SOLN_;\n\n \+ saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5 );\n\n # procedure to evaluate the slope field\n fn := proc(X_,Y_) \n local val; \n val := traperror(evalf(FXY_));\n if va l=lasterror or not type(val,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end i f;\n val;\n end proc;\n\n xx := evalf(x_rk10step);\n n : = nops(data);\n\n if (data[1,1]data[n,1] or xxdata[ 1,1])) then\n error \"independent variable is outside the interpo lation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if; \n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7 _; c8 := c8_;\n c9 := c9_; cA := cA_; cB := cB_; cC := cC_; cD := cD _; cE := cE_; cF := cF_;\n cG := cG_; cH := cH_; \n a21 := c2; a31 := a31_; a32 := a32_; a41 := a41_; a43 := a43_; a51 := a51_;\n a53 \+ := a53_; a54 := a54_; a61 := a61_; a64 := a64_; a65 := a65_; a71 := a7 1_;\n a74 := a74_; a75 := a75_; a76 := a76_; a81 := a81_; a86 := a86 _; a87 := a87_;\n a91 := a91_; a96 := a96_; a97 := a97_; a98 := a98_ ; aA1 := aA1_; aA6 := aA6_; \n aA7 := aA7_; aA8 := aA8_; aA9 := aA9_ ; aB1 := aB1_; aB6 := aB6_; aB7 := aB7_;\n aB8 := aB8_; aB9 := aB9_; aC1 := aC1_; aC8 := aC8_; aC9 := aC9_; aCA := aCA_; \n aCB := aCB_; aD1 := aD1_; aD8 := aD8_; aD9 := aD9_; aDA := aDA_; aDB := aDB_;\n \+ aDC := aDC_; aE1 := aE1_; aE8 := aE8_; aE9 := aE9_; aEA := aEA_; aEB : = aEB_;\n aEC := aEC_; aED := aED_; aF1 := aF1_; aF8 := aF8_; aF9 := aF9_; aFA := aFA_;\n aFB := aFB_; aFC := aFC_; aFD := aFD_; aFE := \+ aFE_; aG1 := aG1_; aG8 := aG8_;\n aG9 := aG9_; aGA := aGA_; aGB := a GB_; aGC := aGC_; aGD := aGD_; aGE := aGE_;\n aGF := aGF_; aH1 := aH 1_; aH8 := aH8_; aH9 := aH9_; aHA := aHA_; aHB := aHB_;\n aHC := aHC _; aHD := aHD_; aHE := aHE_; aHF := aHF_; aHG := aHG_; aI1 := aI1_;\n \+ aI8 := aI8_; aI9 := aI9_; aIA := aIA_; aIB := aIB_; aIC := aIC_; aID := aID_; \n aIE := aIE_; aIF := aIF_; aIG := aIG_; aIH := aIH_; b1 \+ := b1_; bC := bC_;\n bD := bD_; bE := bE_;bF := bF_; bG := bG_; bH : = bH_; bI := bI_;\n # Perform a binary search for the interval conta ining x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if dat a[1,1]1 do\n jM := trunc((jF +jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if ;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n \+ else\n while jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do; \n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n \+ # Get the data needed from the list.\n xk := data[jF,1];\n yk := d ata[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f 1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41* f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f 3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 \+ + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + \+ a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := a A1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9;\n fB := \+ fn(xk + cB*h,yk + t*h);\n t := aC1*f1 + aC8*f8 + aC9*f9 + aCA*fA + a CB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n t := aD1*f1 + aD8*f8 + aD 9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn(xk + cD*h,yk + t*h);\n \+ t := aE1*f1 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC + aED*fD;\n \+ fE := fn(xk + cE*h,yk + t*h);\n t := aF1*f1 + aF8*f8 + aF9*f9 + aF A*fA + aFB*fB + aFC*fC + aFD*fD + aFE*fE;\n fF := fn(xk + cF*h,yk + \+ t*h);\n t := aG1*f1 + aG8*f8 + aG9*f9 + aGA*fA + aGB*fB + aGC*fC + a GD*fD + aGE*fE\n \+ + aGF*fF;\n fG := fn(xk + cG*h,yk + t*h); \n \+ t := aH1*f1 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + aHC*fC + aHD*fD + aH E*fE\n + aHF*fF + aHG*fG;\n fH := fn(xk + cH*h,yk + t*h); \n t := aI1*f1 \+ + aI8*f8 + aI9*f9 + aIA*fA + aIB*fB + aIC*fC + aID*fD + aIE*fE\n \+ + aIF*fF + aIG*fG + aI H*fH;\n fI := fn(xk + h,yk + t*h); \n t := b1*f1 + bC*fC + bD*fD \+ + bE*fE + bF*fF + bG*fG + bH*fH + bI*fI;\n \n ys := yk + t*h;\n e valf[saveDigits](ys);\nend proc: # of rk10step\n\n # start of main p rocedure rungk\n x := op(1,xrng);\n y := op(1,iy);\n if not type (indets(fxy,name) minus \{x,y\},set(realcons)) then\n error \"the 1st argument, %1, must depend only on the variables %2 and %3\",fxy,x ,y;\n end if;\n xrg := op(2,xrng);\n x0 := op(1,xrg);\n xn := \+ op(2,xrg);\n y0 := op(2,iy);\n\n # Get the options.\n # Set the \+ default values to start with.\n stps := 20;\n mthd := 'rk4';\n o utpt := 'points';\n prntflg := false;\n if nargs>3 then\n Opt ions:=[args[4..nargs]];\n if not type(Options,list(equation)) the n\n error \"each optional argument must be an equation\"\n \+ end if;\n if hasoption(Options,'steps','stps','Options') then\n if not type(stps,posint) then\n error\"\\\"steps\\ \" must be a positive integer\"\n end if;\n end if;\n \+ if hasoption(Options,'method','mthd','Options') then\n if n ot member(mthd,\{'euler','impeuler','rk2','rk2a','rk2b','rk3','rk3a', \n 'rk3b','rk3c','rk3d','rk3e','rk3f','rk4','rk4a','rk4b' ,'rk4c','rk4d',\n 'rk4e','rk4f','rk4g','rk4h','rk4k','rk5 ','rk5a','rk5b','rk5c','rk5d',\n 'rk5e','rk6','rk6a','rk6 b','rk6c','rk6d','rk7','rk7a','rk7b','rk7c',\n 'rk8','rk8 a','rk8b','rk8c','rk8d','rk9','rk9a','rk9b','rk9c','rk10',\n \+ 'rk10a','rk10b'\})\n then\n error \"\\\"method \\\" must be 'euler','impeuler','rk2','rk2a','rk2b','rk3','rk3a','rk3b ','rk3c','rk3d','rk3e','rk3f','rk4','rk4a','rk4b','rk4c','rk4d','rk4e' ,'rk4f','rk4g','rk4h','rk4k','rk5','rk5a','rk5b','rk5c','rk5d','rk5e', 'rk6','rk6a','rk6b','rk6c','rk6d','rk7','rk7a','rk7b','rk7c','rk8','rk 8a','rk8b','rk8c','rk8d','rk9','rk9a''rk9b','rk9c','rk10','rk10a' or ' rk10b'\"\n end if;\n end if;\n if hasoption(Options, 'alpha','alph','Options') then\n c := evalf(alph);\n i f not type(alph,realcons) or c<=0 or c>1 then\n error \"\\ \"alpha\\\" must be a positive real constant <= 1\"\n else\n \+ mthd := 'customrk2';\n end if;\n end if;\n \+ if hasoption(Options,'output','outpt','Options') then\n if no t member(outpt,\{'points','discrete','rkstep','continuous','procedure' \}) then\n error \"\\\"output\\\" must be one of 'points',' discrete','continuous','rkstep' or 'procedure'\"\n end if;\n \+ if outpt='discrete' then outpt := 'points' end if;\n if outpt='continuous' or outpt='procedure' then outpt := 'rkstep' end if ; \n end if;\n if hasoption(Options,'info','prntflg','Option s') then\n if prntflg<>true then prntflg := false end if;\n \+ end if;\n if nops(Options)>0 then\n error \"%1 is not \+ a valid option for %2\",op(1,Options), procname;\n end if;\n en d if;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digit s)),Digits+8);\n \n xk := evalf(x0);\n xmax := evalf(xn);\n yk := evalf(y0);\n h := (xmax-xk)/stps;\n\n # Convert any real const ants in the expression to floats.\n fn := subs(\{FXY_=evalf(fxy),X_= x,Y_=y\},\n proc(X_,Y_)\n local val; \n val := traperro r(evalf(FXY_));\n if val=lasterror or not type(val,numeric) then \n error \"evaluation of slope field failed at %1\",evalf([X_, Y_],saveDigits);\n end if;\n val;\n end proc);\n soln := [xk,yk];\n\n if mthd='euler' then\n if prntflg then\n \+ print(`method: Euler`);\n print(`The slope field is evaluat ed at the start of the step.`);\n end if;\n for k from 1 to \+ stps do\n yk := yk + h*fn(xk,yk);\n xk := xk + h;\n \+ soln := soln,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits;\n \+ if outpt='rkstep' then\n return subs(\{SOLN_=[soln],FXY_=fx y,X_=x,Y_=y\},eval(eulerstep)); \n else\n return evalf([s oln]);\n end if;\n elif mthd='impeuler' or mthd='rk2b' then\n \+ if prntflg then\n print(`method: improved Euler`);\n \+ print(`The slope field is evaluated at the start and end of the ste p.`);\n end if;\n for k from 1 to stps do\n k1 := h* fn(xk,yk);\n xk := xk + h;\n k2 := h*fn(xk,yk + k1);\n yk := yk + (k1 + k2)/2;\n soln := soln,[xk,yk];\n \+ if prntflg then print('step',k,` `,[xk,yk]) end if;\n end \+ do;\n Digits := saveDigits;\n if outpt='rkstep' then\n \+ return subs(\{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y\},eval(impeulerstep)) ; \n else\n return evalf([soln]);\n end if;\n elif mthd='rk2' or mthd='rk2a' then\n if prntflg then\n print (`method: classical mid-point Runge-Kutta order 2`);\n print(` The slope field is evaluated at the start of the step and also half-wa y across the step.`);\n end if;\n hh := h/2;\n for k fr om 1 to stps do\n k1 := hh*fn(xk,yk);\n yk := yk + h*f n(xk + hh,yk + k1);\n xk := xk + h;\n soln := soln,[xk ,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end if; \n end do;\n Digits := saveDigits;\n if outpt='rkstep' \+ then\n return subs(\{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y\},eval(rk 2step)); \n else\n return evalf([soln]);\n end if;\n elif mthd='customrk2' then\n if prntflg then\n print(` method: custom Runge-Kutta order 2`);\n if c=1 then\n \+ print(`The slope field is evaluated at the start and end of the ste p.`);\n else\n print(`The slope field is evaluated \+ at the start of the step and also `,c,` of distance across the step.`) ;\n end if;\n end if;\n t := 1/(2*c);\n s := 1 \+ - t;\n for k from 1 to stps do\n f1 := fn(xk,yk);\n \+ f2 := fn(xk + c*h,yk + c*f1*h);\n yk := yk + h*(s*f1 + t*f2 );\n xk := xk + h;\n soln := soln,[xk,yk];\n i f prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n \+ Digits := saveDigits;\n if outpt='rkstep' then\n ret urn subs(\{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,ALPH_=c\},eval(customrk2ste p)); \n else\n return evalf([soln]);\n end if;\n e lif mthd='rk3' or mthd='rk3a' then\n if prntflg then\n pr int(`method: classical Runge-Kutta order 3`);\n print(`3 evalu ations of the slope field are required per step.`);\n end if;\n \+ hh := h/2;\n for k from 1 to stps do\n k1 := h*fn(xk, yk);\n k2 := h*fn(xk+hh,yk + k1/2);\n k3 := h*fn(xk+h, yk - k1 + 2*k2);\n yk := yk + (k1 + 4*k2 + k3)/6;\n xk := xk + h;\n soln := soln,[xk,yk];\n if prntflg then \+ print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := \+ saveDigits;\n if outpt='rkstep' then\n return subs(\{SOLN _=[soln],FXY_=fxy,X_=x,Y_=y\},eval(rk3step)); \n else\n r eturn evalf([soln]);\n end if;\n elif mthd='rk3b' then\n if prntflg then\n print(`method: evaluation at 1/3,2/3 based Run ge-Kutta order 3`);\n print(`3 evaluations of the slope field \+ are required per step.`);\n end if;\n h13 := h/3;\n h23 := h13*2;\n for k from 1 to stps do\n f1 := fn(xk,yk);\n f2 := fn(xk + h13,yk + h13*f1);\n f3 := fn(xk + h23,y k + h23*f2);\n yk := yk + (f1 + 3*f3)*h/4;\n xk := xk \+ + h;\n soln := soln,[xk,yk];\n if prntflg then print(' step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDig its;\n if outpt='rkstep' then\n return subs(\{SOLN_=[soln ],FXY_=fxy,X_=x,Y_=y\},eval(rk3bstep)); \n else\n return \+ evalf([soln]);\n end if;\n elif mthd='rk3c' then\n if prnt flg then\n print(`method: evaluation at 3/7,16/21 based Runge- Kutta order 3`);\n print(`3 evaluations of the slope field are required per step.`);\n end if;\n\n c2 := evalf(3/7);\n \+ c3 := evalf(16/21);\n a21 := c2;\n a31 := evalf(-64/945); \n a32 := evalf(112/135);\n b1 := evalf(19/96);\n b2 := evalf(1/3);\n b3 := 0.46875;\n\n for k from 1 to stps do\n \+ f1 := fn(xk,yk);\n f2 := fn(xk + c2*h,yk + a21*f1*h); \n f3 := fn(xk + c3*h,yk + (a31*f1 + a32*f2)*h);\n yk \+ := yk + (b1*f1 + b2*f2 + b3*f3)*h;\n xk := xk + h;\n s oln := soln,[xk,yk];\n if prntflg then print('step',k,` `,[x k,yk]) end if;\n end do;\n Digits := saveDigits;\n if o utpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y ,\n c2_=c2,c3_=c3,a31_=a31,a32_=a32,b1_=b1,b2_=b2\};\n \+ return subs(eqns,eval(rk3cstep)); \n else\n return ev alf([soln]);\n end if;\n elif mthd='rk3d' then\n if prntfl g then\n print(`method: evaluation at 1-3^(-1/2), 2/3 based Ru nge-Kutta order 3`);\n print(`3 evaluations of the slope field are required per step.`);\n end if;\n\n SQRT3 := evalf[Digi ts+3](sqrt(3));\n c2 := evalf((3-SQRT3)/3);\n c3 := evalf(2/ 3);\n a21 := c2;\n a31 := evalf((3-SQRT3)/9);\n a32 := \+ evalf((3+SQRT3)/9);\n\n for k from 1 to stps do\n f1 := f n(xk,yk);\n f2 := fn(xk + c2*h,yk + a21*f1*h);\n f3 := fn(xk + c3*h,yk + (a31*f1 + a32*f2)*h);\n yk := yk + (f1 + 3* f3)*h/4;\n xk := xk + h;\n soln := soln,[xk,yk];\n \+ if prntflg then print('step',k,` `,[xk,yk]) end if;\n end \+ do;\n Digits := saveDigits;\n if outpt='rkstep' then\n \+ eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,\n c2_=c2,c3_= c3,a31_=a31,a32_=a32\};\n return subs(eqns,eval(rk3dstep)); \n else\n return evalf([soln]);\n end if;\n elif mth d='rk3e' then\n if prntflg then\n print(`method: evaluati on at (1/6)^(1/3) based Runge-Kutta order 3`);\n print(`3 eval uations of the slope field are required per step.`);\n end if;\n \n c2 := evalf((1/6)^(1/3));\n a21 := c2;\n a32 := c2; \n b3 := c2;\n c3 := (1+sqrt(9-12*c2))*c2/2;\n t := 3*c 3-2;\n a31 := (c3*(c3+3*c2*(c2-1)))/((3*c2-2)*c2);\n b1 := ( 3*c2*(2*c3-1)-t)/(6*c2*c3);\n b2 := t/(6*(c3-c2)*c2);\n\n fo r k from 1 to stps do\n f1 := fn(xk,yk);\n f2 := fn(xk + c2*h,yk + a21*f1*h);\n f3 := fn(xk + c3*h,yk + (a31*f1 + a3 2*f2)*h);\n yk := yk + (b1*f1 + b2*f2 + b3*f3)*h;\n xk := xk + h;\n soln := soln,[xk,yk];\n if prntflg then \+ print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := \+ saveDigits;\n if outpt='rkstep' then\n eqns := \{SOLN_=[s oln],FXY_=fxy,X_=x,Y_=y,\n c2_=c2,c3_=c3,a31_=a31,b1_=b1,b2 _=b2\};\n return subs(eqns,eval(rk3estep)); \n else\n \+ return evalf([soln]);\n end if;\n elif mthd='rk3f' then\n \+ if prntflg then\n print(`method: evaluation at 33^(1/2) b ased Runge-Kutta order 3`);\n print(`3 evaluations of the slop e field are required per step.`);\n end if;\n\n SQRT33 := ev alf[Digits+3](sqrt(33));\n # nodes\n c2 := 0.5;\n c3 := evalf((3+SQRT33)/12);\n # linking coefficients\n a21 := c2; \n a31 := evalf((SQRT33-5)/12);\n a32 := evalf(2/3);\n \+ # weights\n b1 := evalf((SQRT33-3)/12);\n b2 := evalf((9-SQR T33)/12);\n b3 := c2;\n\n for k from 1 to stps do\n \+ f1 := fn(xk,yk);\n f2 := fn(xk + c2*h,yk + a21*f1*h);\n \+ f3 := fn(xk + c3*h,yk + (a31*f1 + a32*f2)*h);\n yk := yk + ( b1*f1 + b2*f2 + b3*f3)*h;\n xk := xk + h;\n soln := so ln,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) en d if;\n end do;\n Digits := saveDigits;\n if outpt='rks tep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,\n \+ c3_=c3,a31_=a31,a32_=a32,b1_=b1,b2_=b2\};\n return subs( eqns,eval(rk3fstep)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk4' or mthd='rk4a' then\n if prntflg \+ then\n print(`method: classical Runge-Kutta order 4`);\n \+ print(`4 evaluations of the slope field are required per step.`);\n end if;\n hh := h/2;\n for k from 1 to stps do\n \+ hk1 := hh*fn(xk,yk);\n hk2 := hh*fn(xk + hh,yk + hk1);\n \+ k3 := h*fn(xk + hh,yk + hk2);\n hk4 := hh*fn(xk + h,yk + k3);\n yk := yk + (hk1 + hk2 + hk2 + k3 + hk4)/3;\n x k := xk + h;\n soln := soln,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits;\n if outpt='rkstep' then\n return subs(\{SOL N_=[soln],FXY_=fxy,X_=x,Y_=y\},eval(rk4step)); \n else\n \+ return evalf([soln]);\n end if;\n elif mthd='rk4b' then\n \+ if prntflg then\n print(`method: Gill's Runge-Kutta order 4`); \n print(`4 evaluations of the slope field are required per st ep`);\n end if;\n r := evalf[Digits+3](sqrt(2));\n r1 : = 2-r;\n r2 := 2+r;\n r3 := r-1;\n hh := h/2;\n fo r k from 1 to stps do\n hk1 := hh*fn(xk,yk);\n hk2 := \+ hh*fn(xk + hh,yk + hk1);\n hk3 := hh*fn(xk + hh,yk + r3*hk1 + \+ r1*hk2);\n hk4 := hh*fn(xk + h,yk - r*hk2 + r2*hk3);\n \+ yk := yk + (hk1 + r1*hk2 + r2*hk3 + hk4)/3;\n xk := xk + h;\n soln := soln,[xk,yk];\n if prntflg then print('step', k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits;\n if outpt='rkstep' then\n return subs(\{SOLN_=[soln],FXY_ =fxy,X_=x,Y_=y\},eval(rk4bstep)); \n else\n return evalf( [soln]);\n end if;\n elif mthd='rk4c' then\n if prntflg th en\n print(`method: 3/8 Runge-Kutta order 4`);\n print (`4 evaluations of the slope field are required per step.`);\n en d if;\n h13 := h/3;\n h23 := 2*h13; \n for k from 1 to \+ stps do\n k1 := h*fn(xk,yk);\n k13 := k1/3;\n \+ k2 := h*fn(xk + h13,yk + k13);\n k3 := h*fn(xk + h23,yk + k2 - k13);\n k4 := h*fn(xk + h,yk + k1 - k2 + k3);\n yk := yk + (k1 + 3*k2 + 3*k3 + k4)/8;\n xk := xk + h;\n sol n := soln,[xk,yk];\n if prntflg then print('step',k,` `,[xk, yk]) end if;\n end do;\n Digits := saveDigits;\n if out pt='rkstep' then\n return subs(\{SOLN_=[soln],FXY_=fxy,X_=x,Y_ =y\},eval(rk4cstep)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk4d' then\n if prntflg then\n \+ print(`method: Ralston's Runge-Kutta order 4`);\n print(`4 ev aluations of the slope field are required per step.`);\n end if; \n\n SQRT5 := evalf[Digits+3](sqrt(5)); \n # nodes\n c2 := 0.4;\n c3 := evalf((14-3*SQRT5)/16);\n a21 := c2;\n\n \+ # linking coefficients\n a31 := evalf((-2889+1428*SQRT5)/1024) ;\n a32 := evalf((3785-1620*SQRT5)/1024);\n a41 := evalf((-3 365+2094*SQRT5)/6040);\n a42 := evalf((-975-3046*SQRT5)/2552);\n \+ a43 := evalf((467040+203968*SQRT5)/240845);\n\n # weights\n \+ b1 := evalf((263+24*SQRT5)/1812);\n b2 := evalf((125-1000*SQ RT5)/3828);\n b3 := evalf(1024*(3346+1623*SQRT5)/5924787);\n \+ b4 := evalf((30-4*SQRT5)/123);\n \n for k from 1 to stps do\n \+ f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(x k + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n \+ f4 := fn(xk + h,yk + t*h);\n yk := yk + (b1*f1 + b2*f2 + b3* f3 + b4*f4)*h;\n xk := xk + h;\n soln := soln,[xk,yk]; \n if prntflg then print('step',k,` `,[xk,yk]) end if;\n \+ end do;\n Digits := saveDigits;\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,\n \+ a31_=a31,a32_=a32,a41_=a41,a42_=a42,a43_=a43, \n b1_=b1,b 2_=b2,b3_=b3,b4_=b4\};\n return subs(eqns,eval(rk4dstep)); \n \+ else\n return evalf([soln]);\n end if;\n elif mthd ='rk4e' then\n if prntflg then\n print(`method: evaluatio n at 3/7,6/11 based Runge-Kutta order 4`);\n print(`4 evaluati ons of the slope field are required per step.`);\n end if;\n\n \+ # nodes\n c2 := evalf(3/7);\n c3 := evalf(6/11);\n\n \+ # linking coefficients\n a21 := c2;\n a31 := evalf(3/121); \n a32 := evalf(63/121);\n a41 := evalf(83/351);\n a42 \+ := evalf(-406/1053);\n a43 := evalf(1210/1053);\n\n # weight s\n b1 := evalf(35/216);\n b2 := evalf(343/1296);\n b3 \+ := evalf(1331/3240);\n b4 := 0.1625;\n \n for k from 1 to s tps do\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 \+ := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3 ;\n f4 := fn(xk + h,yk + t*h);\n yk := yk + (b1*f1 + b 2*f2 + b3*f3 + b4*f4)*h;\n xk := xk + h;\n soln := sol n,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits;\n if outpt='rkst ep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,\n c3_=c3,a31_=a31,a32_=a32,a41_=a41,a42_=a42,\n a 43_=a43,b1_=b1,b2_=b2,b3_=b3\};\n return subs(eqns,eval(rk4est ep)); \n else\n return evalf([soln]);\n end if;\n \+ elif mthd='rk4f' then\n if prntflg then\n print(`method: \+ Dormand's Runge-Kutta order 4`);\n print(`4 evaluations of the slope field are required per step.`);\n end if;\n\n # nodes \n c2 := 0.4;\n c3 := 0.6;\n\n # linking coefficients\n a21 := c2;\n a31 := -0.15;\n a32 := 0.75;\n a41 : = evalf(19/44);\n a42 := evalf(-15/44);\n a43 := evalf(10/11 );\n\n # weights\n b1 := evalf(11/72);\n b2 := evalf(25 /72);\n b3 := b2;\n b4 := b1;\n \n for k from 1 to stp s do\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3; \n f4 := fn(xk + h,yk + t*h);\n yk := yk + (b1*f1 + b2 *f2 + b3*f3 + b4*f4)*h;\n xk := xk + h;\n soln := soln ,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end \+ if;\n end do;\n Digits := saveDigits;\n if outpt='rkste p' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,\n \+ a41_=a41,a42_=a42,a43_=a43,b1_=b1,b2_=b2\};\n return subs( eqns,eval(rk4fstep)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk4g' then\n if prntflg then\n \+ print(`method: Prince's Runge-Kutta order 4`);\n print(`5 eva luations of the slope field are required per step.`);\n end if;\n \n # nodes\n c2 := 0.2;\n c3 := 0.4;\n c4 := 0.8; \n \n # linking coefficients\n a21 := c2;\n a32 := c3; \n a41 := 1.2;\n a42 := -2.4;\n a43 := 2.0;\n a51 \+ := -2.125;\n a52 := 5.0;\n a53 := -2.5;\n a54 := 0.625; \n\n # weights\n b1 := evalf(13/96);\n b3 := evalf(25/4 8);\n b4 := evalf(25/96);\n b5 := evalf(1/12);\n\n for \+ k from 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f1; \n f2 := fn(xk + c2*h,yk + t*h);\n t := a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43 *f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a 52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + h,yk + t*h);\n \+ yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5)*h;\n xk := xk + h :\n soln := soln,[xk,yk];\n if prntflg then print('ste p',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits ;\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_= fxy,X_=x,Y_=y,\n b1_=b1,b3_=b3,b4_=b4,b5_=b5\};\n retu rn subs(eqns,eval(rk4gstep)); \n else\n return evalf([sol n]);\n end if;\n elif mthd='rk4h' then\n if prntflg then\n print(`method: Runge-Kutta order 4 that satisfies 6 out of 9 \+ order 5 conditions`);\n print(`5 evaluations of the slope fiel d are required per step.`);\n end if;\n SQRT := evalf[Digits +3](sqrt(286834));\n\n # nodes\n c2 := 0.2;\n c3 := eva lf(41423/95610+2/47805*SQRT);\n c4 := evalf(14/15);\n \n # l inking coefficients\n a21 := c2;\n a31 := evalf(-136273061/1 828254420-44602/457063605*SQRT);\n a32 := evalf(928363667/1828254 420+63724/457063605*SQRT);\n a41 := evalf(470023321/264181860+141 53/88060620*SQRT);\n a42 := evalf(-1301419249/380343060+106373/38 0343060*SQRT);\n a43 := evalf(8767694361577/3403785129705-1499010 941/3403785129705*SQRT);\n a51 := evalf(2026605983/503413211+1254 361/2013652844*SQRT);\n a52 := evalf(-2514970618/310613499+4271/1 242453996*SQRT);\n a53 := evalf(111358826364018808/21226230987849 027-\n 13003629628001/21226230987849027 *SQRT);\n a54 := evalf(-114738/654787-9/654787*SQRT);\n\n # \+ weights\n b1 := evalf(26742/250579-25/1503474*SQRT);\n b2 := evalf(351425/3401442+625/6802884*SQRT);\n b3 := evalf(1269160041 9657638/25917344257438359-1508229090784/25917344257438359*SQRT);\n \+ b4 := evalf(142845/293986-15/293986*SQRT);\n b5 := evalf(-1366/ 7359+SQRT/29436);\n\n for k from 1 to stps do\n f1 := fn( xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h); \n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h );\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4 *h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + h,yk + t*h);\n yk := yk + (b1*f1 + b2*f2 + b 3*f3 + b4*f4 + b5*f5)*h;\n xk := xk + h:\n soln := sol n,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits;\n if outpt='rkst ep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,c4 _=c4,\n a31_=a31,a32_=a32,a41_=a41,a42_=a42,a43_=a43,a51_=a51, a52_=a52,\n a53_=a53,a54_=a54,b1_=b1,b2_=b2,b3_=b3,b4_=b4,b5_= b5\};\n return subs(eqns,eval(rk4hstep)); \n else\n \+ return evalf([soln]);\n end if;\n elif mthd='rk4k' then\n \+ if prntflg then\n print(`method: Runge-Kutta order 4 that s atisfies 7 out of 9 order 5 conditions`);\n print(`5 evaluatio ns of the slope field are required per step.`);\n end if;\n\n \+ # nodes\n c2 := 0.2;\n c3 := evalf(7/18);\n c4 := 0.9 5;\n \n # linking coefficients\n a21 := c2;\n a31 := ev alf(7/648);\n a32 := evalf(245/648);\n a41 := evalf(2489/140 0);\n a42 := evalf(-5567/1360);\n a43 := evalf(155439/47600) ;\n a51 := evalf(19659/6650);\n a52 := evalf(-1181/170);\n \+ a53 := evalf(1527174/300475);\n a54 := evalf(-176/1919);\n\n \+ # weights\n b1 := evalf(97/798);\n b3 := evalf(4374/777 7);\n b4 := evalf(4000/5757);\n b5 := evalf(-25/66);\n\n \+ for k from 1 to stps do\n f1 := fn(xk,yk);\n t := a2 1*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1+a3 2*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + \+ a42*f2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t : = a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + h,yk + t* h);\n yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5)*h;\n \+ xk := xk + h:\n soln := soln,[xk,yk];\n if prntflg the n print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits : = saveDigits;\n if outpt='rkstep' then\n eqns := \{SOLN_= [soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,c4_=c4,\n a31_=a31,a32_=a32,a 41_=a41,a42_=a42,a43_=a43,a51_=a51,a52_=a52,\n a53_=a53,a54_=a 54,b1_=b1,b3_=b3,b4_=b4,b5_=b5\};\n return subs(eqns,eval(rk4k step)); \n else\n return evalf([soln]);\n end if;\n \+ elif mthd='rk5' or mthd='rk5a' then\n if prntflg then\n \+ print(`method: Prince-Dormand Runge-Kutta order 5`);\n print( `6 evaluations of the slope field are required per step.`);\n end if;\n\n # nodes\n c2 := 0.2;\n c3 := 0.3;\n c4 := 0.8;\n c5 := evalf(8/9);\n\n # linking coefficients\n \+ a21 := c2;\n a31 := 0.075;\n a32 := 0.225;\n a41 := eva lf(44/45);\n a42 := evalf(-56/15);\n a43 := evalf(32/9);\n \+ a51 := evalf(19372/6561);\n a52 := evalf(-25360/2187);\n \+ a53 := evalf(64448/6561);\n a54 := evalf(-212/729);\n a61 : = evalf(9017/3168);\n a62 := evalf(-355/33);\n a63 := evalf( 46732/5247);\n a64 := evalf(49/176);\n a65 := evalf(-5103/18 656);\n\n # weights\n b1 := evalf(35/384);\n b3 := eval f(500/1113);\n b4 := evalf(125/192);\n b5 := evalf(-2187/678 4);\n b6 := evalf(11/84);\n\n for k from 1 to stps do\n \+ f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2 *h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + \+ c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 \+ := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a 54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + h,yk + t*h );\n \n yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f 6)*h;\n xk := xk + h:\n soln := soln,[xk,yk];\n \+ if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do; \n Digits := saveDigits;\n if outpt='rkstep' then\n \+ eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n \+ c4_=c4,c5_=c5,a31_=a31,a32_=a32,a41_=a41,a42_=a42,\n a43_=a 43,a51_=a51,a52_=a52,a53_=a53,a54_=a54,a61_=a61,\n a62_=a62 ,a63_=a63,a64_=a64,a65_=a65,b1_=b1,b3_=b3,\n b4_=b4,b5_=b5, b6_=b6\};\n return subs(eqns,eval(rk5step)); \n else\n \+ return evalf([soln]);\n end if;\n elif mthd='rk5b' then\n if prntflg then\n print(`method: modified Prince-Dormand Runge-Kutta order 5`);\n print(`6 evaluations of the slope fi eld are required per step.`);\n end if;\n\n # nodes\n c 2 := evalf(8/39);\n c3 := evalf(4/13);\n c4 := evalf(5/6);\n c5 := evalf(43/47);\n\n # linking coefficients\n a21 : = c2;\n a31 := evalf(1/13);\n a32 := evalf(3/13);\n a41 := evalf(7385/6912);\n a42 := evalf(-9425/2304);\n a43 := e valf(13325/3456);\n a51 := evalf(223324757/91364240);\n a52 \+ := evalf(-174255393/18272848);\n a53 := evalf(382840094/46824173) ;\n a54 := evalf(-39627252/234120865);\n a61 := evalf(108475 /36464);\n a62 := evalf(-9633/848);\n a63 := evalf(7624604/8 06183);\n a64 := evalf(8100/49979);\n a65 := evalf(-4568212/ 19446707);\n\n # weights\n b1 := evalf(4817/51600);\n b 3 := evalf(1685099/3650640);\n b4 := evalf(19656/23575);\n b 5 := evalf(-53676491/88060560);\n b6 := evalf(53/240);\n\n f or k from 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f 1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32 *f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a 42*f2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + \+ t*h);\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n \+ f6 := fn(xk + h,yk + t*h);\n \n yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6)*h;\n xk := xk + h:\n s oln := soln,[xk,yk];\n if prntflg then print('step',k,` `,[x k,yk]) end if;\n end do;\n Digits := saveDigits;\n if o utpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y ,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,a31_=a31,a32_=a32,a41_=a41, a42_=a42,\n a43_=a43,a51_=a51,a52_=a52,a53_=a53,a54_=a54,a6 1_=a61,\n a62_=a62,a63_=a63,a64_=a64,a65_=a65,b1_=b1,b3_=b3 ,\n b4_=b4,b5_=b5,b6_=b6\};\n return subs(eqns,eval (rk5step)); \n else\n return evalf([soln]);\n end if ;\n elif mthd='rk5c' then\n if prntflg then\n print(`me thod: Butcher's Runge-Kutta order 5`);\n print(`6 evaluations \+ of the slope field are required per step.`);\n end if;\n h14 := h/4;\n h34 := 3*h14; \n for k from 1 to stps do\n \+ k1 := h*fn(xk,yk);\n k2 := h*fn(xk + h14,yk + k1/4);\n \+ k3 := h*fn(xk + h14,yk + (k1 + k2)/8);\n k4 := h*fn(xk + h/ 2,yk - k2/2 + k3);\n k5 := h*fn(xk + h34,yk + (3*k1 + 9*k4)/16 );\n k6 := h*fn(xk + h,yk - (3*k1 - 2*k2 - 12*k3 + 12*k4 - 8*k 5)/7);\n yk := yk + (7*k1 + 32*k3 + 12*k4 + 32*k5 + 7*k6)/90; \n xk := xk + h;\n soln := soln,[xk,yk];\n if \+ prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n \+ Digits := saveDigits;\n if outpt='rkstep' then\n retur n subs(\{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y\},eval(rk5cstep)); \n el se\n return evalf([soln]);\n end if; \n elif mthd='rk5d ' then\n if prntflg then\n print(`method: Fehlberg Runge- Kutta order 5`);\n print(`6 evaluations of the slope field are required per step.`);\n end if;\n # nodes\n c2 := 0.25 ;\n c3 := 0.375;\n c4 := evalf(12/13);\n c6 := 0.5;\n\n # linking coefficients\n a21 := c2;\n a31 := 0.09375; \n a32 := 0.28125;\n a41 := evalf(1932/2197);\n a42 := \+ evalf(-7200/2197);\n a43 := evalf(7296/2197);\n a51 := evalf (439/216);\n a52 := -8.0;\n a53 := evalf(3680/513);\n a 54 := evalf(-845/4104);\n a61 := evalf(-8/27);\n a62 := 2.0; \n a63 := evalf(-3544/2565);\n a64 := evalf(1859/4104);\n \+ a65 := -.275;\n\n # weights\n b1 := evalf(16/135);\n \+ b3 := evalf(6656/12825);\n b4 := evalf(28561/56430);\n b5 : = -0.18;\n b6 := evalf(2/55);\n\n for k from 1 to stps do\n \+ f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk \+ + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(x k + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + h,yk + t*h);\n t := a61*f1 \+ + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6)*h; \n xk := xk + h:\n soln := soln,[xk,yk];\n if \+ prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n \+ Digits := saveDigits;\n if outpt='rkstep' then\n eqns \+ := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c4_=c4,\n a41_=a41,a42 _=a42,a43_=a43,a51_=a51,a53_=a53,a54_=a54,\n a61_=a61,a63_= a63,a64_=a64,b1_=b1,b3_=b3,b4_=b4,b6_=b6\};\n return subs(eqns ,eval(rk5dstep)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk5e' then\n if prntflg then\n pri nt(`method: stage order 3 Runge-Kutta order 5`);\n print(`6 ev aluations of the slope field are required per step.`);\n end if; \n\n # nodes\n c2 := evalf(10/51);\n c3 := evalf(5/17); \n c4 := evalf(18/23);\n c5 := evalf(6/7);\n\n # linkin g coefficients\n a21 := c2;\n a31 := evalf(5/68);\n a32 := evalf(15/68);\n a41 := evalf(288999/304175);\n a42 := ev alf(-1102977/304175);\n a43 := evalf(1052028/304175);\n a51 \+ := evalf(49503/17150);\n a52 := evalf(-1557387/137200);\n a5 3 := evalf(15766038/1637825);\n a54 := evalf(-318987/1048208);\n \+ a61 := evalf(718133/332100);\n a62 := evalf(-32589/4100);\n \+ a63 := evalf(259774484/39350775);\n a64 := evalf(351785/6343 11);\n a65 := evalf(-27440/74169);\n\n # weights\n b1 : = evalf(1447/16200);\n b3 := evalf(2255067/5118800);\n b4 := evalf(1958887/3094200);\n b5 := evalf(-2401/9045);\n b6 := \+ evalf(41/400);\n\n for k from 1 to stps do\n f1 := fn(xk, yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h); \n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4*h ,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f 3 + a64*f4 + a65*f5;\n f6 := fn(xk + h,yk + t*h);\n \n \+ yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6)*h;\n \+ xk := xk + h:\n soln := soln,[xk,yk];\n if prntflg th en print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits \+ := saveDigits;\n if outpt='rkstep' then\n eqns := \{SOLN_ =[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,a 31_=a31,a32_=a32,a41_=a41,a42_=a42,\n a43_=a43,a51_=a51,a52 _=a52,a53_=a53,a54_=a54,a61_=a61,\n a62_=a62,a63_=a63,a64_= a64,a65_=a65,b1_=b1,b3_=b3,\n b4_=b4,b5_=b5,b6_=b6\};\n \+ return subs(eqns,eval(rk5step)); \n else\n return ev alf([soln]);\n end if;\n elif mthd='rk6' or mthd='rk6a' then\n \+ if prntflg then\n print(`method: modified Prince-Dormand \+ Runge-Kutta order 6`);\n print(`8 evaluations of the slope fie ld are required per step.`);\n end if;\n\n # nodes\n c2 := evalf(1/7);\n c3 := evalf(2/9);\n c4 := evalf(3/7);\n \+ c5 := 0.6;\n c6 := 0.8;\n c7 := evalf(8/9);\n\n # li nking coefficients\n a21 := c2;\n a31 := evalf(4/81);\n \+ a32 := evalf(14/81);\n a41 := evalf(291/1372);\n a42 := eva lf(-27/49);\n a43 := evalf(1053/1372);\n a51 := evalf(31273/ 74875);\n a52 := evalf(-174027/149750);\n a53 := evalf(21715 29/1946750);\n a54 := evalf(222887/973375);\n a61 := evalf(- 15044972/4511354625);\n a62 := evalf(1264648/2408625);\n a63 := evalf(-2233027368/8521447625);\n a64 := evalf(1655875312/1353 4063875);\n a65 := evalf(769355600/1840632687);\n a71 := eva lf(-783750308/2764969425);\n a72 := evalf(17024/10935);\n a7 3 := evalf(-556381192/838214325);\n a74 := evalf(-44627032352/359 44602525);\n a75 := evalf(3425781632/1880179209);\n a76 := e valf(-8564/28431);\n a81 := evalf(-7398871/20228400);\n a82 \+ := evalf(2128/1755);\n a83 := evalf(2387931837/6995467700);\n \+ a84 := evalf(-18706202998/8332836525);\n a85 := evalf(890103218 /435871449);\n a86 := evalf(14987/52728);\n a87 := evalf(-72 9/2704);\n\n # weights\n b1 := evalf(10055/131328);\n b 3 := evalf(452709/1746784);\n b4 := evalf(386561/1387152);\n \+ b5 := evalf(-74875/906984);\n b6 := evalf(267625/411008);\n \+ b7 := evalf(-19683/63232);\n b8 := evalf(39/304);\n\n for k from 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2; \n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f 2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51 *f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h) ;\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n \+ f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a82*f2 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a8 7*f7;\n f8 := fn(xk + h,yk + t*h);\n yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8)*h;\n xk := x k + h:\n soln := soln,[xk,yk];\n if prntflg then print ('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveD igits;\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln], FXY_=fxy,X_=x,Y_=y,\n c2_=c2,c3_=c3,c4_=c4,c5_=c5,c6_=c6,c7 _=c7,\n a31_=a31,a32_=a32,a41_=a41,a42_=a42,a43_=a43,\n \+ a51_=a51,a52_=a52,a53_=a53,a54_=a54,\n a61_=a61,a62 _=a62,a63_=a63,a64_=a64,a65_=a65,\n a71_=a71,a72_=a72,a73_= a73,a74_=a74,a75_=a75,a76_=a76,\n a81_=a81,a82_=a82,a83_=a8 3,a84_=a84,a85_=a85,a86_=a86,a87_=a87,\n b1_=b1,b3_=b3,b4_= b4,b5_=b5,b6_=b6,b7_=b7,b8_=b8\};\n return subs(eqns,eval(rk6s tep)); \n else\n return evalf([soln]);\n end if;\n \+ elif mthd='rk6b' then\n if prntflg then\n print(`method: modified Verner (2004) Runge-Kutta order 6`);\n print(`8 eval uations of the slope field are required per step.`);\n end if;\n \n SQRT := evalf[Digits+3](sqrt(127165369));\n\n # nodes\n \+ c2 := evalf(1/7);\n c3 := evalf(2/9);\n c4 := evalf(3/7) ;\n c5 := evalf(2/3);\n c6 := 0.75;\n c7 := evalf(6/7); \n\n # linking coefficients\n a21 := c2;\n a31 := evalf (4/81);\n a32 := evalf(14/81);\n a41 := evalf(375091/1056440 -13/1056440*SQRT);\n a42 := evalf(-358921/377300+13/377300*SQRT); \n a43 := evalf(5413239/5282200-117/5282200*SQRT);\n a51 := \+ evalf(112429/291060+1/97020*SQRT);\n a52 := evalf(-24083/34650-1/ 34650*SQRT);\n a53 := evalf(327779/700700+1/53900*SQRT);\n a 54 := evalf(1960/3861);\n a61 := evalf(375046124859127/1204492153 948160-30099176971/1204492153948160*SQRT);\n a62 := evalf(1835352 63/745395200-1539/745395200*SQRT);\n a63 := evalf(-67346683412541 381/78291990006630400+\n 6378854874993/ 78291990006630400*SQRT);\n a64 := evalf(15531379353077/1398071250 1184-542278639/6990356250592*SQRT);\n a65 := evalf(-250853102397/ 4301757692672+99602199/4301757692672*SQRT);\n a71 := evalf(-23932 5085322111/1676670217615330-1423526370611/18443372393768630*SQRT);\n \+ a72 := evalf(684/385);\n a73 := evalf(-879907834054265571/828 275087501973020+\n 2824616249531127 /9111025962521703220*SQRT);\n a74 := evalf(-1836435498337088/1112 077185153025-\n 5455320910608/ 12232849036683275*SQRT);\n a75 := evalf(875036986989481341/184433 723937686300+\n 83234977908921/1 84433723937686300*SQRT);\n a76 := evalf(-77487519136/27600179285- 6573856/27600179285*SQRT);\n a81 := evalf(-730241868733492664107/ 325025147374035441300+\n 108803988777 00821/54170857895672573550*SQRT);\n a82 := evalf(-80006318/861921 5+1372/1723843*SQRT);\n a83 := evalf(531607510995601213645533/237 87025600410890074400-\n 4462211307089846412 9/23787025600410890074400*SQRT);\n a84 := evalf(-2228577819115664 16813751/15844975934484227763375+\n 1854987 8647654236743/15844975934484227763375*SQRT);\n a85 := evalf(12546 2606366599297397/21887215311382858000-\n 957 1573334008721/21887215311382858000*SQRT);\n a86 := evalf(-3460845 7998464/10889426004075+3247831552/10889426004075*SQRT);\n a87 := \+ evalf(381655757/225666720-103243/677000160*SQRT);\n\n # weights\n b1 := evalf(40367/580608+SQRT/2903040);\n b3 := evalf(77444 0757/2478694400-6561/2478694400*SQRT);\n b4 := evalf(4460029/4043 5200+343/40435200*SQRT);\n b5 := evalf(283959/716800-27/716800*SQ RT);\n b6 := evalf(-5000/32319+8/161595*SQRT);\n b7 := evalf (3607331/16588800-343/16588800*SQRT);\n b8 := evalf(18379/376320+ SQRT/376320);\n\n for k from 1 to stps do\n f1 := fn(xk,y k);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4*h,y k + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f3 \+ + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 \+ := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a82*f2 + a83*f3 + a 84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + h,yk + t*h); \n yk := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8)*h;\n xk := xk + h:\n soln := soln,[xk,yk];\n \+ if prntflg then print('step',k,` `,[xk,yk]) end if;\n en d do;\n Digits := saveDigits;\n if outpt='rkstep' then\n \+ eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n \+ c4_=c4,c5_=c5,c6_=c6,c7_=c7,a31_=a31,a32_=a32,a41_=a41,\n \+ a42_=a42,a43_=a43,a51_=a51,a52_=a52,a53_=a53,a54_=a54,\n \+ a61_=a61,a62_=a62,a63_=a63,a64_=a64,a65_=a65,a71_=a71,\n \+ a72_=a72,a73_=a73,a74_=a74,a75_=a75,a76_=a76,a81_=a81,\n a8 2_=a82,a83_=a83,a84_=a84,a85_=a85,a86_=a86,a87_=a87,\n b1_= b1,b3_=b3,b4_=b4,b5_=b5,b6_=b6,b7_=b7,b8_=b8\};\n return subs( eqns,eval(rk6step)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk6c' then\n if prntflg then\n \+ print(`method: Verner (1991) Runge-Kutta order 6`);\n print(`8 evaluations of the slope field are required per step.`);\n end i f;\n\n # nodes\n c2 := 0.125;\n c3 := evalf(1/6);\n \+ c4 := 0.25;\n c5 := 0.5;\n c6 := 0.6;\n c7 := 0.8;\n \n # linking coefficients\n a21 := c2;\n a31 := evalf(1 /18);\n a32 := evalf(1/9);\n a41 := 0.0625;\n a43 := 0. 1875;\n a51 := 0.25;\n a53 := -0.75;\n a54 := 1;\n \+ a61 := 0.2144;\n a63 := -0.5328;\n a64 := 0.7616;\n a6 5 := 0.1568;\n a71 := evalf(-98/1875);\n a73 := 0.192e-1;\n \+ a74 := evalf(10736/13125);\n a75 := evalf(-1936/1875);\n \+ a76 := evalf(22/21);\n a81 := 0.18;\n a83 := 0.84;\n \+ a84 := evalf(-2924/1925);\n a85 := 2.96;\n a86 := evalf(-15/ 7);\n a87 := evalf(15/22);\n\n # weights\n b1 := evalf( 11/144);\n b4 := evalf(256/693);\n b6 := evalf(125/504);\n \+ b7 := evalf(125/528);\n b8 := evalf(5/72);\n\n for k fro m 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f1;\n \+ f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 \+ + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f 1 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h); \n t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n \+ f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 \+ + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + h,yk + t*h);\n \+ yk := yk + (b1*f1 + b4*f4 + b6*f6 + b7*f7 + b8*f8)*h;\n x k := xk + h:\n soln := soln,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits;\n if outpt='rkstep' then\n eqns := \{SOLN_=[sol n],FXY_=fxy,X_=x,Y_=y,c3_=c3,a31_=a31,\n a32_=a32,a71_=a71,a74 _=a74,a75_=a75,a76_=a76,a84_=a84,\n a86_=a86,a87_=a87,b1_=b1,b 4_=b4,b6_=b6,b7_=b7,b8_=b8\};\n return subs(eqns,eval(rk6cstep )); \n else\n return evalf([soln]);\n end if;\n el if mthd='rk6d' then\n if prntflg then\n print(`method: Ch ammud Runge-Kutta order 6`);\n print(`7 evaluations of the slo pe field are required per step.`);\n end if; \n SQRT5 : = evalf[Digits+3](sqrt(5));\n\n # nodes\n c2 := evalf(4/7); \n c3 := evalf(5/7);\n c4 := evalf(6/7);\n c5 := evalf( (5-SQRT5)/10);\n c6 := evalf((5+SQRT5)/10);\n\n # linking co efficients\n a21 := c2;\n a31 := evalf(115/112);\n a32 \+ := evalf(-5/16);\n a41 := evalf(589/630);\n a42 := evalf(5/1 8);\n a43 := evalf(-16/45);\n a51 := evalf((1145-29*SQRT5)/6 000);\n a52 := evalf((595-187*SQRT5)/1200);\n a53 := evalf(( 34*SQRT5-70)/375);\n a54 := evalf(-3/100*SQRT5);\n a61 := ev alf((355-587*SQRT5)/12000);\n a62 := evalf((935-391*SQRT5)/2400); \n a63 := evalf((26*SQRT5-190)/375);\n a64 := evalf((135-3*S QRT5)/400);\n a65 := evalf((1+SQRT5)/4);\n a71 := evalf((129 *SQRT5-49)/480);\n a72 := evalf((153*SQRT5-425)/96);\n a73 : = evalf((52-12*SQRT5)/15);\n a74 := evalf((3*SQRT5-27)/16);\n \+ a75 := evalf((5-3*SQRT5)/4);\n a76 := evalf((5-SQRT5)/2);\n\n \+ # weights\n b1 := evalf(1/12);\n b5 := evalf(5/12);\n \+ b6 := b5;\n b7 := b1;\n\n for k from 1 to stps do\n \+ f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2* h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c 3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 : = fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a5 4*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + \+ a62*f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t *h);\n t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f 6;\n f7 := fn(xk + h,yk + t*h);\n\n yk := yk + (b1*f1 \+ + b5*f5 + b6*f6 + b7*f7)*h;\n xk := xk + h:\n soln := \+ soln,[xk,yk];\n if prntflg then print('step',k,` `,[xk,yk ]) end if;\n end do;\n Digits := saveDigits;\n if outpt ='rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,\n \+ c2_=c2,c3_=c3,c4_=c4,c5_=c5,c6_=c6,\n a31_=a31,a 32_=a32,a41_=a41,a42_=a42,a43_=a43,\n a51_=a51,a52_=a52,a53 _=a53,a54_=a54,\n a61_=a61,a62_=a62,a63_=a63,a64_=a64,a65_= a65,\n a71_=a71,a72_=a72,a73_=a73,a74_=a74,a75_=a75,a76_=a7 6,\n b1_=b1,b5_=b5,b6_=b6,b7_=b7\};\n return subs(e qns,eval(rk6dstep)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk7' or mthd='rk7a' then\n if prntflg t hen\n print(`method: Verner \"most robust\" Runge-Kutta order \+ 7`);\n print(`9 evaluations of the slope field are required pe r step.`);\n end if;\n\n # nodes \n c2 := evalf(1/200); \n c3 := evalf(49/450);\n c4 := evalf(49/300);\n c5 := \+ evalf(91/200);\n c6 := evalf(34704460/57271701);\n c7 := eva lf(167/200);\n c8 := evalf(183/200);\n\n # linking coefficie nts\n a21 := c2;\n a31 := evalf(-4361/4050);\n a32 := e valf(2401/2025); \n a41 := evalf(49/1200);\n a43 := 0.1225 ;\n a51 := evalf(1781/2800);\n a53 := evalf(-13689/5600);\n \+ a54 := evalf(507/224);\n a61 := evalf(-275776923568321554889 485313326460/108782544039075797415588764982099);\n a63 := evalf(9 576001512158705648097438730000/929765333667314507825544999847);\n \+ a64 := evalf(-22178538465642954902290458689600/2789296001001943523476 634999541);\n a65 := evalf(12323686750109283453854913779200/15540 363434153685345084109283157);\n a71 := evalf(82215080144712764649 93/8206108584945090400000);\n a73 := evalf(-9852144759099/2364568 872400);\n a74 := evalf(15322550932778398907299/39961343474642830 07200);\n a75 := evalf(-18338463121898520004/36506562121215938675 );\n a76 := evalf(23340475544602125119307511373519383499/\n \+ 34957329425893779598660175543672800000);\n a81 := ev alf(81088643022740545033730780169/2975182110231937140152800000);\n \+ a83 := evalf(-2837794586103/67559110640);\n a84 := evalf(-14167 575606881316095038341141/1344719188593468553337836000);\n a85 := \+ evalf(2395552232834276839307772/29760062864388068268875);\n a86 : = evalf(-4076715891031001341580357765362043260356514682697/\n \+ 60535801523558513633981092635987721507186400000);\n a8 7 := evalf(36551527355459957808/2801171464968864455);\n a91 := ev alf(-3347747115771808477876752833599/1101327591307901549464211073280); \n a93 := evalf(1214704878477625125/119815105452943264);\n a 94 := evalf(-65581118617864038124456452415/102003422973420725394287096 72);\n a95 := evalf(-133373082911575479273298406095/8407082691618 9821955373830704);\n a96 := evalf(6225156836540393863837014637589 52267447736841050281950137693/\n 3289942188601405845 40186142455568117669077094653332432085760);\n a97 := evalf(461691 88671551441399013763125/2343692704156841275628930358208);\n a98 : = evalf(18880867865877597493091875/3469664148196911643475533504);\n\n \+ # weights\n b1 := evalf(9420080774669597/198627609019792680) ;\n b4 := evalf(18658605936510000/72821569629535727);\n b5 : = evalf(296950875175030000/1101802245630054969);\n b6 := evalf(18 875276980274212686824835566143151189850553896330009/\n \+ 148780947139609706104394157596648357994575577036224440);\n b7 : = evalf(18663850606812500/74993696164706319);\n b8 := evalf(17988 4749312500/58508928482581269);\n b9 := evalf(349315176247648/7273 791403140339);\n\n for k from 1 to stps do\n f1 := fn(xk, yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h); \n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h );\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5 *h,yk + t*h);\n t := a61*f1 + a63*f3 + a64*f4 + a65*f5;\n \+ f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a73*f3 + a74 *f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n \+ t := a81*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n \+ f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a93*f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + h,yk + t *h);\n \n yk := yk + (b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9)*h;\n xk := xk + h:\n soln := soln,[x k,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end if; \n end do;\n Digits := saveDigits;\n if outpt='rkstep' \+ then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3 ,\n c4_=c4,c5_=c5,c6_=c6,c7_=c7,c8_=c8,a31_=a31,a32_=a32,\n a41_=a41,a51_=a51,a53_=a53,a54_=a54,a61_=a61,a63_=a63,\n \+ a64_=a64,a65_=a65,a71_=a71,a73_=a73,a74_=a74,a75_=a75,\n \+ a76_=a76,a81_=a81,a83_=a83,a84_=a84,a85_=a85,a86_=a86,\n \+ a87_=a87,a91_=a91,a93_=a93,a94_=a94,a95_=a95,a96_=a96,\n \+ a97_=a97,a98_=a98,b1_=b1,b4_=b4,b5_=b5,b6_=b6,b7_=b7,\n \+ b8_=b8,b9_=b9\};\n return subs(eqns,eval(rk7step)); \n e lse\n return evalf([soln]);\n end if;\n elif mthd='rk7b ' then\n if prntflg then\n print(`method: Verner (1990) R unge-Kutta order 7`);\n print(`9 evaluations of the slope fiel d are required per step.`);\n end if;\n\n # nodes \n c2 := evalf(1/18);\n c3 := evalf(1/9);\n c4 := evalf(1/6);\n \+ c5 := evalf(4/9);\n c6 := evalf(19/39);\n c7 := evalf(7/ 9);\n c8 := evalf(8/9);\n\n # linking coefficients\n a2 1 := c2;\n a32 := c3;\n a41 := evalf(1/24);\n a43 := 0. 125;\n a51 := evalf(44/81);\n a53 := evalf(-56/27);\n a 54 := evalf(160/81);\n a61 := evalf(91561/685464);\n a63 := \+ evalf(-12008/28561);\n a64 := evalf(55100/85683);\n a65 := e valf(29925/228488);\n a71 := evalf(-1873585/1317384);\n a73 \+ := evalf(15680/2889);\n a74 := evalf(-4003076/1083375);\n a7 5 := evalf(-43813/21400);\n a76 := evalf(5751746/2287125);\n \+ a81 := evalf(50383360/12679821);\n a83 := evalf(-39440/2889);\n \+ a84 := evalf(1258442432/131088375);\n a85 := evalf(222872/29 425);\n a86 := evalf(-9203268152/1283077125);\n a87 := evalf (24440/43197);\n a91 := evalf(-22942833/6327608);\n a93 := e valf(71784/5947);\n a94 := evalf(-572980/77311);\n a95 := ev alf(-444645/47576);\n a96 := evalf(846789710/90281407);\n a9 7 := evalf(-240750/707693);\n a98 := evalf(3972375/14534468);\n\n # weights\n b1 := evalf(28781/595840);\n b4 := evalf(8 20752/3128125);\n b5 := evalf(11259/280000);\n b6 := evalf(1 88245551/625100000);\n b7 := evalf(8667/43120);\n b8 := eval f(286011/2737280);\n b9 := evalf(5947/140000);\n\n for k fro m 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f1;\n \+ f2 := fn(xk + c2*h,yk + t*h);\n t := a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4; \n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a63*f 3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n \+ t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(x k + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t \+ := a91*f1 + a93*f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n \+ f9 := fn(xk + h,yk + t*h);\n \n yk := yk + (b1*f1 + b4 *f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9)*h;\n xk := xk + h :\n soln := soln,[xk,yk];\n if prntflg then print('ste p',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits ;\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_= fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,c6_=c6,c7_=c7, c8_=c8,a32_=a32,a41_=a41,\n a43_=a43,a51_=a51,a53_=a53,a54_ =a54,a61_=a61,a63_=a63,\n a64_=a64,a65_=a65,a71_=a71,a73_=a 73,a74_=a74,a75_=a75,\n a76_=a76,a81_=a81,a83_=a83,a84_=a84 ,a85_=a85,a86_=a86,\n a87_=a87,a91_=a91,a93_=a93,a94_=a94,a 95_=a95,a96_=a96,\n a97_=a97,a98_=a98,b1_=b1,b4_=b4,b5_=b5, b6_=b6,b7_=b7,\n b8_=b8,b9_=b9\};\n return subs(eqn s,eval(rk7bstep)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk7c' then\n if prntflg then\n pr int(`method: (early) Verner Runge-Kutta order 7`);\n print(`9 \+ evaluations of the slope field are required per step.`);\n end if ;\n\n # nodes\n c2 := evalf(1/12);\n c3 := evalf(1/6); \n c4 := 0.25;\n c5 := 0.75;\n c6 := evalf(16/17);\n \+ c7 := 0.5;\n c8 := evalf(2/3);\n\n # linking coefficients \n a21 := c2;\n a32 := c3; \n a41 := 0.0625;\n a 43 := 0.1875;\n a51 := 1.3125;\n a53 := -5.0625;\n a54 \+ := 4.5;\n a61 := evalf(1344688/250563);\n a63 := evalf(-1709 184/83521);\n a64 := evalf(1365632/83521);\n a65 := evalf(-7 8208/250563);\n a71 := evalf(-559/384);\n a73 := 6.;\n \+ a74 := evalf(-204/47);\n a75 := evalf(14/39);\n a76 := evalf (-4913/78208);\n a81 := evalf(-12253/99144);\n a83 := evalf( 16/27);\n a84 := evalf(16/459);\n a85 := evalf(29072/161109) ;\n a86 := evalf(-2023/75816);\n a87 := evalf(112/12393);\n \+ a91 := evalf(30517/2512);\n a93 := evalf(-7296/157);\n \+ a94 := evalf(268728/7379);\n a95 := evalf(2472/2041);\n a96 \+ := evalf(-3522621/10743824);\n a97 := evalf(132/157);\n a98 \+ := evalf(-12393/4396);\n\n # weights\n b1 := evalf(2881/4032 0);\n b4 := evalf(1216/2961);\n b5 := evalf(-2624/4095);\n \+ b6 := evalf(24137569/57482880);\n b7 := evalf(-4/21);\n \+ b8 := evalf(4131/3920);\n b9 := evalf(-157/1260);\n\n for k \+ from 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f1;\n \+ f2 := fn(xk + c2*h,yk + t*h);\n t := a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54* f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a6 3*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n \+ t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := f n(xk + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 + a85*f 5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n \+ t := a91*f1 + a93*f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n \+ f9 := fn(xk + h,yk + t*h);\n \n yk := yk + (b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9)*h;\n xk := xk \+ + h:\n soln := soln,[xk,yk];\n if prntflg then print(' step',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDig its;\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln],FX Y_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,c6_=c6,c7_= c7,c8_=c8,a41_=a41,a43_=a43,\n a51_=a51,a53_=a53,a54_=a54,a 61_=a61,a63_=a63,a64_=a64,\n a65_=a65,a71_=a71,a73_=a73,a74 _=a74,a75_=a75,a76_=a76,\n a81_=a81,a83_=a83,a84_=a84,a85_= a85,a86_=a86,a87_=a87,\n a91_=a91,a93_=a93,a94_=a94,a95_=a9 5,a96_=a96,a97_=a97,\n a98_=a98,b1_=b1,b4_=b4,b5_=b5,b6_=b6 ,b7_=b7,b8_=b8,\n b9_=b9\};\n return subs(eqns,eval (rk7bstep)); \n else\n return evalf([soln]);\n end i f;\n elif mthd='rk8' or mthd='rk8a' then\n if prntflg then\n \+ print(`method: modified Verner Runge-Kutta order 8`);\n \+ print(`12 evaluations of the slope field are required per step.`);\n \+ end if;\n ## coefficients by Peter Stone 2004\n \n # n odes\n c2 := 0.0625;\n c3 := evalf(14/135);\n c4 := eva lf(7/45);\n c5 := evalf(7/18);\n c6 := evalf(7/15);\n c 7 := 0.15625;\n c8 := evalf(25/26);\n c9 := evalf(1278295/14 41197);\n cA := 0.9;\n cB := 0.9375;\n\n # linking coef ficients\n a21 := c2;\n a31 := evalf(322/18225);\n a32 \+ := evalf(1568/18225);\n a41 := evalf(7/180);\n a43 := evalf( 7/60);\n a51 := evalf(7/18);\n a53 := evalf(-35/24);\n \+ a54 := evalf(35/24);\n a61 := evalf(7/150);\n a64 := evalf(7 /30);\n a65 := evalf(14/75);\n a71 := evalf(43514165/7193231 36);\n a74 := evalf(162624375/1438646272);\n a75 := evalf(-6 216075/179830784);\n a76 := evalf(24864375/1438646272);\n a8 1 := evalf(-14368194949/12595401000);\n a84 := 1;\n a85 := e valf(-20915913463/2344144075);\n a86 := evalf(35633725963/5004572 664);\n a87 := evalf(931718811136/320765020875);\n a91 := ev alf(-57773334889564386252171506329620162064637/\n \+ 103412787944065527802900274889109695303750);\n a94 := evalf(- 386723168692657185709091642957945964869/\n \+ 91922478172502691380355799901430840270);\n a95 := evalf(-3834711 21798593323965948357448776549140726/\n 769850 75469471004031047982417448328726125);\n a96 := evalf(870823587917 19263148685402659060673412122/\n 205446738715 54351523509521277969792800345);\n a97 := evalf(960989924808644374 6497695266227723149213696/\n 150491233534344921 8741040006148661936176875);\n a98 := evalf(7583493625080295294785 04184457952/\n 803986689555417125775706 70467723767);\n\n aA1 := evalf(-38595180425046189802307237/584817 86834979413828125000);\n aA4 := evalf(-1834080622158680361/457498 361762968750);\n aA5 := evalf(-2190754448214360705819/38315487797 6486328125);\n aA6 := evalf(1976950773019167011008425093/41291388 1883695532466875000);\n aA7 := evalf(3644153807748143195589005977 6/5609050946622346119072265625);\n aA8 := evalf(26720352701572329 072/1863508870040793359375);\n aA9 := evalf(-37605705369060964095 77410830957183/\n 300834042231535739314771432 852812500);\n aB1 := evalf(-5874911352965234418021017/61322598112 27537383424000);\n aB4 := evalf(-731754873396317433/3837774417471 73376);\n aB5 := evalf(-311859131961511522779/4017670093290721280 0);\n aB6 := evalf(7072422966260020722166755913/11257261251862026 09295163392);\n aB7 := evalf(53099552478299007816665507737/100473 98728628705347679349000);\n aB8 := evalf(2201984732164637966325/3 0639201013978512621568);\n aB9 := evalf(2072413322917470547806943 37696975274492225/\n 580633034938359872718236009 481471536857088);\n aBA := evalf(-2417407455078125/55984312296407 04);\n aC1 := evalf(-254891825781702379501572193/1442409084783931 29157343750);\n aC4 := evalf(41769647336726280549/451354056703321 6250);\n aC5 := evalf(-2598834528958129478766/1989521170994904531 25);\n aC6 := evalf(7584202411909804165534087598184/7480301443200 89038312027020625);\n aC7 := evalf(-23155791516606834081083155808 256/6585126967923586907221310703125);\n aC8 := evalf(495506330825 4397040976/91924076509733233765625);\n aC9 := evalf(-105721885186 344994082347982482049477179449584208/\n \+ 162389180025957154762976072093733161101970996875);\n aCA := e valf(200346867610326000/236548496573158861);\n aCB := evalf(-9945 7651550887870464/334983249857927984375);\n\n # weights\n b1 \+ := evalf(945608595931/21139803562500);\n b6 := evalf(707884298388 28125/200615788011865408);\n b7 := evalf(1040811931650228224/4172 679892571203125);\n b8 := evalf(3327845197874431/4742392121906250 );\n b9 := evalf(12011528565367126850789740479741449047421594247/ \n 1819660747043117894592323349717462610942150000); \n bA := evalf(-51574296875/6460735554);\n bB := evalf(48455 29464832/3703262484375);\n bC := evalf(-814106281/2955693888);\n \n for k from 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31 *f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a 41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk \+ + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a84*f4 + a85*f5 + \+ a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t : = a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6 *f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h) ;\n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n t \+ := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA* fA\n \+ + aCB*fB;\n fC := fn(xk + h,yk + t*h);\n \n y k := yk + (b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC* fC)*h;\n xk := xk + h:\n soln := soln,[xk,yk];\n \+ if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do ;\n Digits := saveDigits;\n\n if outpt='rkstep' then\n \+ eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,c4_=c4,c5_=c5,\n \+ c6_=c6,c7_=c7,c8_=c8,c9_=c9,cA_=cA,cB_=cB,a31_=a31,a32_=a32,\n \+ a41_=a41,a43_=a43,a51_=a51,a53_=a53,a54_=a54,a61_=a61,a64_=a64 ,\n a65_=a65,a71_=a71,a74_=a74,a75_=a75,a76_=a76,a81_=a81,a84_ =a84,\n a85_=a85,a86_=a86,a87_=a87,a91_=a91,a94_=a94,a95_=a95, a96_=a96,\n a97_=a97,a98_=a98,aA1_=aA1,aA4_=aA4,aA5_=aA5,aA6_= aA6,aA7_=aA7,\n aA8_=aA8,aA9_=aA9,aB1_=aB1,aB4_=aB4,aB5_=aB5,a B6_=aB6,aB7_=aB7,\n aB8_=aB8,aB9_=aB9,aBA_=aBA,aC1_=aC1,aC4_=a C4,aC5_=aC5,aC6_=aC6,\n aC7_=aC7,aC8_=aC8,aC9_=aC9,aCA_=aCA,aC B_=aCB,b1_=b1,b6_=b6,\n b7_=b7,b8_=b8,b9_=b9,bA_=bA,bB_=bB,bC_ =bC\};\n return subs(eqns,eval(rk8step)); \n else\n \+ return evalf([soln]);\n end if;\n elif mthd='rk8b' then\n \+ if prntflg then\n print(`method: Verner Runge-Kutta order 8 `);\n print(`12 evaluations of the slope field are required pe r step.`);\n end if;\n \n ## coefficients by Jim Verner (s upplied to Maple for dsolve's dverk78 method)\n # nodes\n c2 := 0.0625;\n c3 := evalf(112/1065);\n c4 := evalf(56/355); \n c5 := 0.39;\n c6 := evalf(7/15);\n c7 := 0.156;\n \+ c8 := 0.96;\n c9 := evalf(14435868/16178861);\n cA := eva lf(11/12);\n cB := 0.95;\n\n # linking coefficients\n a 21 := c2;\n a31 := evalf(18928/1134225);\n a32 := evalf(1003 52/1134225);\n a41 := evalf(14/355);\n a43 := evalf(42/355); \n a51 := evalf(94495479/250880000);\n a53 := evalf(-3528065 97/250880000);\n a54 := evalf(178077159/125440000);\n a61 := evalf(12089/252720);\n a64 := evalf(2505377/10685520);\n a6 5 := evalf(960400/5209191);\n a71 := evalf(21400899/350000000);\n a74 := evalf(3064329829899/27126050000000);\n a75 := evalf( -21643947/592609375);\n a76 := evalf(124391943/6756250000);\n \+ a81 := evalf(-15365458811/13609565775);\n a84 := -1.4;\n a 85 := evalf(-8339128164608/939060038475);\n a86 := evalf(34193680 0488/47951126225);\n a87 := evalf(1993321838240/380523459069);\n \+ a91 := evalf(-1840911252282376584438157336464708426954728061551/ \n 2991923615171151921596253813483118262195533733 898);\n a94 := evalf(-1476496080404865730363837225290878021928142 4435/\n 2981692102565021975611711269209606363661854518 );\n a95 := evalf(-8753250485021304411186134217852667428626944045 20560000/\n 17021203042889441839557167757596133949543501 1888324169);\n a96 := evalf(7632051964154290925661849798370645637 589377834346780/\n 1734087257418811583049800347581865260 479233950396659);\n a97 := evalf(75198347919711375170485321796523 47729899303513750000/\n 10456773035023175965978907078123 49832637339039997351);\n a98 := evalf(136604268348916635129331554 9358278750/\n 144631418224267718165055326464180836641); \n aA1 := evalf(-63077736705254280154824845013881/783693578537866 33855112190394368);\n aA4 := evalf(-31948346510820970247215/69560 09216960026632192);\n aA5 := evalf(-3378604805394255292453489375/ 517042670569824692230499952);\n aA6 := evalf(10015878441833259811 98091450220795/184232684207722503701669953872896);\n aA7 := evalf (187023075231349900768014890274453125/\n 25224 698849808178010752575653374848);\n aA8 := evalf(19081585500709988 50625/117087067039189929394176);\n aA9 := evalf(-5295681828815666 8227044990077324877908565/\n 2912779959477433986349822 224412353951940608);\n aB1 := evalf(-1011610659182690953478115799 3685116703/\n 9562819945036894030442231411871744000) ;\n aB4 := evalf(-9623541317323077848129/3864449564977792573440); \n aB5 := evalf(-4823348333146829406881375/5764132336341412399448 16);\n aB6 := evalf(6566119246514996884067001154977284529/\n \+ 970305487021846325473990863582315520);\n a B7 := evalf(2226455130519213549256016892506730559375/\n \+ 364880443159675255577435648380047355776);\n aB8 := eval f(39747262782380466933662225/1756032802431424164410720256);\n aB9 := evalf(48175771419260955335244683805171548038966866545122229/\n \+ 1989786420513815146528880165952064118903852843612160000);\n \+ aBA := evalf(-2378292068163246/47768728487211875);\n aC1 := ev alf(-3218022174758599831659045535578571/145339675363446952566377584709 4384);\n aC4 := evalf(26290092604284231996745/5760876126062860430 544);\n aC5 := evalf(-697069297560926452045586710000/411079677552 45430594036502319);\n aC6 := evalf(182735782043421346143807755090 2273440/\n 139381013914245317709567680839641697); \n aC7 := evalf(643504802814241550941949227194107500000/\n \+ 242124609118836550860494007545333945331);\n aC8 := evalf(162259938151380266113750/59091082835244183497007);\n aC 9 := evalf(-23028251632873523818545414856857015616678575554130463402/ \n 200131691831914445034439052404056033499784245041516290 55);\n aCA := evalf(7958341351371843889152/3284467988443203581305 );\n aCB := evalf(-507974327957860843878400/121555654819179042718 967);\n\n # weights\n b1 := evalf(4631674879841/103782082379 976);\n b6 := evalf(14327219974204125/40489566827933216);\n \+ b7 := evalf(2720762324010009765625000/10917367480696813922225349);\n \+ b8 := evalf(-498533005859375/95352091037424);\n b9 := evalf(4 05932030463777247926705030596175437402459637909765779/\n \+ 78803919436321841083201886041201537229769115088303952);\n bA := \+ evalf(-10290327637248/1082076946951);\n bB := evalf(8632641058880 00/85814662253313);\n bC := evalf(-29746300739/247142463456);\n\n for k from 1 to stps do\n f1 := fn(xk,yk);\n t : = a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f 1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41 *f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a 51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + \+ t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 : = fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a84*f4 + a85*f5 + a8 6*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := \+ a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := f n(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f 6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h); \n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + \+ aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n t : = aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*f A\n \+ + aCB*fB;\n fC := fn(xk + h,yk + t*h);\n \n yk := yk + (b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*f C)*h;\n xk := xk + h:\n soln := soln,[xk,yk];\n \+ if prntflg then print('step',k,` `,[xk,yk]) end if;\n end do; \n Digits := saveDigits;\n if outpt='rkstep' then\n \+ eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,c4_=c4,c5_=c5,\n \+ c6_=c6,c7_=c7,c8_=c8,c9_=c9,cA_=cA,cB_=cB,a31_=a31,a32_=a32,\n \+ a41_=a41,a43_=a43,a51_=a51,a53_=a53,a54_=a54,a61_=a61,a64_=a64,\n a65_=a65,a71_=a71,a74_=a74,a75_=a75,a76_=a76,a81_=a81,a84_=a8 4,\n a85_=a85,a86_=a86,a87_=a87,a91_=a91,a94_=a94,a95_=a95,a96 _=a96,\n a97_=a97,a98_=a98,aA1_=aA1,aA4_=aA4,aA5_=aA5,aA6_=aA6 ,aA7_=aA7,\n aA8_=aA8,aA9_=aA9,aB1_=aB1,aB4_=aB4,aB5_=aB5,aB6_ =aB6,aB7_=aB7,\n aB8_=aB8,aB9_=aB9,aBA_=aBA,aC1_=aC1,aC4_=aC4, aC5_=aC5,aC6_=aC6,\n aC7_=aC7,aC8_=aC8,aC9_=aC9,aCA_=aCA,aCB_= aCB,b1_=b1,b6_=b6,\n b7_=b7,b8_=b8,b9_=b9,bA_=bA,bB_=bB,bC_=bC \};\n return subs(eqns,eval(rk8step)); \n else\n \+ return evalf([soln]);\n end if;\n elif mthd='rk8c' then \n \+ if prntflg then\n print(`method: Fehlberg Runge-Kutta order 8`);\n print(`12 evaluations of the slope field are required \+ per step.`);\n end if;\n\n # nodes\n c2 := evalf(2/27); \n c3 := evalf(1/9);\n c4 := evalf(1/6);\n c5 := evalf( 5/12);\n c6 := 0.5;\n c7 := evalf(5/6);\n c8 := c4;\n \+ c9 := evalf(2/3);\n cA := evalf(1/3);\n\n # linking coef ficients \n a21 := c2;\n a31 := evalf(1/36);\n a32 := e valf(1/12);\n a41 := evalf(1/24);\n a43 := 0.125;\n a51 := c5;\n a53 := -1.5625;\n a54 := 1.5625;\n a61 := 0.0 5;\n a64 := 0.25;\n a65 := 0.2;\n a71 := evalf(-25/108) ;\n a74 := evalf(125/108);\n a75 := evalf(-65/27);\n a7 6 := evalf(125/54);\n a81 := evalf(31/300);\n a85 := evalf(6 1/225);\n a86 := evalf(-2/9);\n a87 := evalf(13/900);\n \+ a91 := 2;\n a94 := evalf(-53/6);\n a95 := evalf(704/45);\n \+ a96 := evalf(-107/9);\n a97 := evalf(67/90);\n a98 := 3 ;\n aA1 := evalf(-91/108);\n aA4 := evalf(23/108);\n aA 5 := evalf(-976/135);\n aA6 := evalf(311/54);\n aA7 := evalf (-19/60);\n aA8 := evalf(17/6);\n aA9 := -a32;\n aB1 := evalf(3/205);\n aB6 := evalf(-6/41);\n aB7 := -aB1;\n \+ aB8 := evalf(-3/41);\n aB9 := -aB8;\n aBA := -aB6;\n aC 1 := evalf(-1777/4100);\n aC4 := evalf(-341/164);\n aC5 := e valf(4496/1025);\n aC6 := evalf(-289/82);\n aC7 := evalf(219 3/4100);\n aC8 := evalf(51/82);\n aC9 := evalf(33/164);\n \+ aCA := evalf(12/41);\n\n # weights\n b6 := evalf(34/105); \n b7 := evalf(9/35);\n b8 := b7;\n b9 := evalf(9/280); \n bA := b9;\n bB := evalf(41/840);\n bC := bB;\n\n \+ for k from 1 to stps do\n f1 := fn(xk,yk);\n t := a2 1*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + \+ a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 \+ + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f 1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h) ;\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn (xk + c7*h,yk + t*h);\n t := a81*f1 + a85*f5 + a86*f6 + a87*f7 ;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a94* f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,y k + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 + \+ aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t : = aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk,yk + t*h);\n t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + a C7*f7 + aC8*f8 + aC9*f9 + aCA*fA + fB;\n fC := fn(xk + h,yk + \+ t*h);\n \n yk := yk + (b6*f6 +b7*f7 + b8*f8 + b9*f9 + bA*fA + \+ bB*fB + bC*fC)*h;\n xk := xk + h:\n soln := soln,[xk,y k];\n if prntflg then print('step',k,` `,[xk,yk]) end if;\n \+ end do;\n Digits := saveDigits;\n if outpt='rkstep' the n\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,c7_=c7,c8_=c4,c9_=c9,cA_=cA,a21_=c2,\n \+ a31_=a31,a32_=a32,a41_=a41,a71_=a71,a74_=a74,a75_=a75,\n \+ a76_=a76,a81_=a81,a85_=a85,a86_=a86,a87_=a87,a94_=a94,\n \+ a95_=a95,a96_=a96,a97_=a97,aA1_=aA1,aA4_=aA4,aA5_=aA5,\n \+ aA6_=aA6,aA7_=aA7,aA8_=aA8,aB1_=aB1,aB6_=aB6,aB8_=aB8,\n aC 1_=aC1,aC4_=aC4,aC5_=aC5,aC6_=aC6,aC7_=aC7,aC8_=aC8,\n aC9_ =aC9,aCA_=aCA,b6_=b6,b7_=b7,b9_=b9,bB_=bB\};\n return subs(eqn s,eval(rk8cstep)); \n else\n return evalf([soln]);\n \+ end if;\n elif mthd='rk8d' then\n if prntflg then\n p rint(`method: Verner Runge-Kutta order 8`);\n print(`11 evalua tions of the slope field are required per step.`);\n end if;\n \+ SQRT21 := evalf[Digits+3](sqrt(21));\n\n # nodes\n c1 := \+ 0.5; \n c2 := evalf((7+SQRT21)/14);\n c3 := evalf((7-SQRT 21)/14);\n\n # linking coefficients\n a21 := 0.5;\n a3 1 := 0.25;\n a32 := a31;\n a41 := evalf(1/7);\n a42 \+ := evalf(-(7+3*SQRT21)/98);\n a43 := evalf((21+5*SQRT21)/49);\n \+ a51 := evalf((11+SQRT21)/84);\n a53 := evalf((18+4*SQRT21)/63 );\n a54 := evalf((21-SQRT21)/252);\n a61 := evalf((5+SQRT21 )/48);\n a63 := evalf((9+SQRT21)/36);\n a64 := evalf((-231+1 4*SQRT21)/360);\n a65 := evalf((63-7*SQRT21)/80);\n a71 := e valf((10-SQRT21)/42);\n a73 := evalf((-432+92*SQRT21)/315);\n \+ a74 := evalf((633-145*SQRT21)/90);\n a75 := evalf((-504+115*SQR T21)/70);\n a76 := evalf((63-13*SQRT21)/35);\n a81 := evalf( 1/14);\n a85 := evalf((14-3*SQRT21)/126);\n a86 := evalf((13 -3*SQRT21)/63);\n a87 := evalf(1/9);\n a91 := 0.03125;\n \+ a95 := evalf((91-21*SQRT21)/576);\n a96 := evalf(11/72);\n \+ a97 := evalf(-(385+75*SQRT21)/1152);\n a98 := evalf((63+13*SQRT2 1)/128);\n aA1 := a81;\n aA5 := a87;\n aA6 := evalf(-(7 33+147*SQRT21)/2205);\n aA7 := evalf((515+111*SQRT21)/504);\n \+ aA8 := evalf(-(51+11*SQRT21)/56);\n aA9 := evalf((132+28*SQRT21 )/245);\n aB5 := evalf((-42+7*SQRT21)/18);\n aB6 := evalf((- 18+28*SQRT21)/45);\n aB7 := evalf(-(273+53*SQRT21)/72);\n aB 8 := evalf((301+53*SQRT21)/72);\n aB9 := evalf((28-28*SQRT21)/45) ;\n aBA := evalf((49-7*SQRT21)/18);\n\n # weights\n b1 \+ := 0.05;\n b8 := evalf(49/180);\n b9 := evalf(16/45);\n \+ \n h1 := c1*h;\n h2 := c2*h;\n h3 := c3*h;\n\n fo r k from 1 to stps do\n f1 := fn(xk,yk);\n t := a21*f1 ;\n f2 := fn(xk + h1,yk + t*h);\n t := a31*f1+a32*f2; \n f3 := fn(xk + h1,yk + t*h);\n t := a41*f1 + a42*f2 \+ + a43*f3;\n f4 := fn(xk + h2,yk + t*h);\n t := a51*f1 \+ + a53*f3 + a54*f4;\n f5 := fn(xk + h2,yk + t*h);\n t : = a61*f1 + a63*f3 + a64*f4 + a65*f5; \n f6 := fn(xk + h1,yk + \+ t*h);\n t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6; \n \+ f7 := fn(xk + h3,yk + t*h);\n t := a81*f1 + a85*f5 + a86 *f6 + a87*f7; \n f8 := fn(xk + h3,yk + t*h);\n t := a9 1*f1 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + h1,y k + t*h);\n t := aA1*f1 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f8 + \+ aA9*f9; \n fA := fn(xk + h2,yk + t*h);\n t := aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + h ,yk + t*h);\n\n yk := yk + (b1*f1 + b8*f8 + b9*f9 + b8*fA + b1 *fB)*h;\n xk := xk + h:\n soln := soln,[xk,yk];\n \+ if prntflg then print('step',k,` `,[xk,yk]) end if;\n end d o;\n Digits := saveDigits;\n if outpt='rkstep' then\n \+ eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n \+ a41_=a41,a42_=a42,a43_=a43,a51_=a51,a53_=a53,a54_=a54,\n \+ a61_=a61,a63_=a63,a64_=a64,a65_=a65,a71_=a71,a73_=a73,\n a7 4_=a74,a75_=a75,a76_=a76,a81_=a81,a85_=a85,a86_=a86,\n a87_ =a87,a95_=a95,a96_=a96,a97_=a97,a98_=a98,aA6_=aA6,\n aA7_=a A7,aA8_=aA8,aA9_=aA9,aB5_=aB5,aB6_=aB6,aB7_=aB7,\n aB8_=aB8 ,aB9_=aB9,aBA_=aBA,b8_=b8,b9_=b9\};\n return subs(eqns,eval(rk 8dstep)); \n else\n return evalf([soln]);\n end if; \n elif mthd='rk9' or mthd='rk9a' then\n if prntflg then\n \+ print(`method: Verner \"most robust\" Runge-Kutta order 9`);\n \+ print(`15 evaluations of the slope field are required per step.`) ;\n end if;\n SQRT6 := evalf[Digits+3](sqrt(6));\n\n # \+ nodes\n c2 := 0.04;\n c3 := evalf(48/335-32/1675*SQRT6);\n \+ c4 := evalf(72/335-48/1675*SQRT6);\n c5 := 0.576;\n c6 : = evalf(48/125-8/125*SQRT6);\n c7 := evalf(48/125+8/125*SQRT6);\n c8 := 0.64;\n c9 := 0.48;\n cA := 0.6754e-1;\n cB := 0.25;\n cC := evalf(57617028499878/85094827871699);\n cD := 0.8115;\n cE := 0.906;\n\n # linking coefficients\n \+ a21 := c2;\n a31 := evalf(-15792/112225+5536/112225*SQRT6);\n \+ a32 := evalf(31872/112225-1536/22445*SQRT6);\n a41 := evalf(18 /335-12/1675*SQRT6);\n a43 := evalf(54/335-36/1675*SQRT6);\n \+ a51 := evalf(4014/3125+252/625*SQRT6);\n a53 := evalf(-14742/312 5-972/625*SQRT6);\n a54 := evalf(12528/3125+144/125*SQRT6);\n \+ a61 := evalf(1232/16875-152/16875*SQRT6);\n a64 := evalf(29684/ 106875-13372/320625*SQRT6);\n a65 := evalf(2132/64125-284/21375*S QRT6);\n a71 := evalf(2032/16875+152/16875*SQRT6);\n a74 := \+ evalf(-7348/98325-33652/294975*SQRT6);\n a75 := evalf(10132/64125 -716/21375*SQRT6);\n a76 := evalf(2592/14375+2912/14375*SQRT6);\n a81 := evalf(16/225);\n a86 := evalf(64/225+4/225*SQRT6);\n a87 := evalf(64/225-4/225*SQRT6);\n a91 := 0.7125e-1;\n \+ a96 := evalf(177/800+69/1600*SQRT6);\n a97 := evalf(177/800-69/ 1600*SQRT6);\n a98 := -0.3375e-1;\n aA1 := evalf(28445308290 46074022657/58982400000000000000000);\n aA6 := evalf(428715685965 2598464203/58982400000000000000000-\n 1598864762333658025 459/117964800000000000000000*SQRT6);\n aA7 := evalf(4287156859652 598464203/58982400000000000000000+\n 15988647623336580254 59/117964800000000000000000*SQRT6);\n aA8 := evalf(-1410338862186 04337343/6553600000000000000000);\n aA9 := evalf(-214092648485549 71927/204800000000000000000);\n aB1 := evalf(-72189389771/9959178 240000-459663572789/59755069440000*SQRT6);\n aB6 := evalf(1/30); \n aB7 := evalf(-14201240926266911/557169364500480000-\n \+ 31790792357660029/557169364500480000*SQRT6);\n aB8 := evalf( 22414436941/1563197440000+459663572789/56275107840000*SQRT6);\n a B9 := evalf(154180604903/2534154240000+459663572789/11403694080000*SQR T6);\n aBA := evalf(21871487332435000000/125536952879579583419+\n 18386542911560000000/1129832575916216250771*SQRT6);\n \+ aC1 := evalf(-17814457135339308018349626715861482187798261191466639 5752937745405391408707734804982447062502773/12477180101129940547461455 1641042535359813494760056839715637349132420387912040530441382977824000 0+35259119457556931711565118099122309702656888038447848465094493141264 8046608828531034562538513357/81101670657344613558499458566677647983878 77159403694581516427693607325214282634478689893558560000*SQRT6);\n \+ aC6 := evalf(-391150225456457796885858319889751408825022451618311227 03201435591036520210945751850583137867/3842542879826810236707110858948 3043166777031255688218331140907046999467997785653437677908480-49082670 0396287454540598331961129757400186839154291202145347161815801053957874 498846640625/153701715193072409468284434357932172667108125022752873324 56362818799787199114261375071163392*SQRT6);\n aC7 := evalf(643210 0415353289329239558349593602702779307803344850302651057507965674391860 95378077346484617022694073/1814903407134118101527330524719997209072721 513421672786517822272756721738310655354625038802858212480000*SQRT6-622 0642966809325161935258654730602646524634866355956674478556999200235462 11607797417635623004817316459/9074517035670590507636652623599986045363 60756710836393258911136378360869155327677312519401429106240000);\n \+ aC8 := evalf(1203943546728385294644268186854769106596033156989737459 970836017592684437096940490927391123081521/654673243150492794078974012 5933173479539636700187880198168132038132534360122730704444373657280000 -151110511960958278763850506139095613011386663021919350564690684891134 877118069370443383945077153/327336621575246397039487006296658673976981 8350093940099084066019066267180061365352222186828640000*SQRT6);\n \+ aC9 := evalf(63681466156701378449525903160928961790100434377497936201 427140303316098275608362465676059840449/119057634931893490852780569777 780769114850167606078444507680127107913165342297705956314829715000-352 5911945755693171156511809912230970265688803844784846509449314126480466 08828531034562538513357/1547749254114615381086147407111149998493052178 879019778599841652402871149449870177432092786295000*SQRT6);\n aCA := evalf(102789340487632397056686359306562764382798025378120766919524 06255660602976082835598179622579836784640000000/2070660733355865000456 3853916074751077994608347553087587301432465002027701979512351053114927 376343490460197-247579462796834043926692669258294252357855908695112663 96518921812563538267024485653444025561440747520000000/2691858953362624 5005933010090897176401392990851819013863491862204502636012573366056369 0494055892465375982561*SQRT6);\n aCB := evalf(1963500009650946638 0843956455829094932847113883632439882926745444809822658280742880787456 /\n1500993312432347748713715179276681373702227783425321028560191681523 4167186635020874092933);\n aD1 := evalf(2525608241949563386308964 624438617443527/\n 12416017897756354830807859200000000000000 *SQRT6-\n 25488511950948766602163761842966272037005387677568 247/\n 25343364340644945281003771622773961523200000000000000 );\n aD6 := evalf(-552470350996365859393640759989/240079352826370 3412500070400000*SQRT6-\n 2617546081675469247418718340204655 213/431392587109884206933606400000000000);\n aD7 := evalf(-459692 94618407232267578352626581642155421231201/\n 101877311541337 81589406192186163200000000000000+\n 154049353658281830373890 6021531546510663696889/\n 8858896655768505729918427987968000 00000000000*SQRT6);\n aD8 := evalf(-39688129516350281784855158384 03541696971/\n 18374628007211630439078297600000000000000*SQR T6+\n 203013873418014401588800777489550153682185921397719/\n 6003783517480134311881093736968119910400000000000000);\n \+ aD9 := evalf(-677602211254760908521917338264019314117/\n \+ 635714271434389910412902400000000000000*SQRT6+\n 57340072791 914637839492204156400815228449519011392389/\n 19744238839693 126186283635091213610188800000000000000);\n aDA := evalf(-8800028 717594297513271653743688562521/\n 20449362746897197076153911 415852248500*SQRT6+\n 24100788715039192225758197856261740786 803059875758180717/\n 96627170012108181149539080426439199420 65136939286292000);\n aDB := evalf(124358916033523439225154730110 040589545064737/\n 19935912449945669485002510178704400000000 000);\n aDC := evalf(59471613929748667447508235610359202988633073 9685357945223223985387172161751824241784555387316314439/\n818019847119 6783596317257691012383133865852087437955966940529435820311560005973203 70585600000000000);\n aE1 := evalf(-29388095287323080393516641629 6767553377/\n 866938749696854853908947200000000000000*SQRT6+ \n 184592679361470753674594239208189459317466722387929369596 771/\n 12789121709183065623336401420573165506457132160000000 0000000);\n aE6 := evalf(2897291244884828193281565089/19049265055 803310768128000000*SQRT6+\n 59669959863673801810278527182634 77/684582962942931480729600000000000);\n aE7 := evalf(-3748619435 624523040662096435375495632409181/\n 14058307681273263487419 38035200000000000000*SQRT6+\n 990092406144467276115942254522 77068906413179/\n 161670538334642530105322874048000000000000 00);\n aE8 := evalf(41982993267604400562166630899538221911/\n \+ 116635822311401951029305600000000000000*SQRT6+\n 4632 645823113234486269357844283603936661991916850927460433/\n 50 96189922215990577140952099757378096638035200000000000000);\n aE9 \+ := evalf(293880952873230803935166416296767553377/\n 16544712 2399672764770545400000000000000*SQRT6-\n 1213547567718468807 0559819501757154968443992507349800863475059/\n 3337534088557 268857775113382843672473526974754800000000000000);\n aEA := evalf (21495292553013453087829315020563569618432/\n 29973653446264 566614372595657785433238875*SQRT6-\n 80314286035971809641477 50321204281053557209400385686643427859804352/\n 251358644017 8391306900178164909088113749933981949109368563389778875);\n aEB : = evalf(-44866632128961269158599595825347949153517725172080973/\n \+ 5429607175821308141232283339099249860726338769531250);\n aE C := evalf(-3599885339347525438133682259450581379615044406751677715705 63740579175484411998973149563531328527853237660249760109643/2341281374 4566824073606771166244237989248347093174069661571660234572993334330800 8758732590194294958617150200000000000);\n aED := evalf(1011136807 359189181222571916914688/2927578889427871359661497484969729); \n \+ aF1 := evalf(4220334940168717525563719481764309232553/\n 555 3268895030690235789996003491120640000*SQRT6-\n 4311793849461 2449223384237106139955697243762787772847383/\n 1403010486229 4690648579566521727488445420965260989440000);\n aF6 := evalf(-653 72649360291914372644744384375/457582893592156886213077910962176*SQRT6- \n 492170504431044248358505817476691843/26311016381549020957 251979880325120);\n aF7 := evalf(31229230698290445016158280894898 3992497619279/\n 5403119617653588491324608411686483231744000 0*SQRT6-\n 60242025722206083647640080390153021797730167/\n \+ 4671870346091448695506240355969515576320000);\n aF8 := e valf(-4220334940168717525563719481764309232553/\n 5229862652 007483519857107084128791040000*SQRT6-\n 10128486019754425336 362855829794634260766582925227304979/\n 20514404587330497742 72501566471676463052668060718080000);\n aF9 := evalf(-42203349401 68717525563719481764309232553/\n 105978923991540128750274918 1781142480000*SQRT6+\n 9016439677522482531787474796989593957 3106537263617688583/\n 9932194582195572820411492715910530662 743409752296080000);\n aFA := evalf(-4321622978732766746177248749 3266526541342720000000/\n 2687992206790662400529710662148712 0800647611685231*SQRT6+\n 8222204217843539224161063461051121 90310210366765138782108892460117760000000/\n 112539961436930 436130682455392076582934435837857314380718907401253008522853);\n \+ aFB := evalf(209814213871916216679569640811090009729840605120/\n \+ 11651974660960738096987230622554824075229159217);\n aFC := e valf(39415508928639522811841227154858131502145198581482445785437666619 99079625453432169420046111603168071904019820197053706993310801913/\n57 6348806945747835561749398160966945390916610765210182493857593996732757 363976976471505530337022074730630638475548489174498085584);\n aFD := evalf(-4759443892077050695292772766912275498897121280000000000/\n \+ 4614026158486489304426198097242323507384603506591241137);\n \+ aFE := evalf(38733614144315448443538220691259283298308750000000/ \n 93806291160324220065540465392781147766752569954001);\n\n \+ # weights\n b1 := evalf(100976787617015984669475787/69215029 52403262310437464576);\n b8 := evalf(8877148253451235588984375/43 85514038208782482187638272);\n b9 := evalf(9619165729496815117477 58515625/4416417715504587515036809762176);\n bA := evalf(19673375 16701564001434375000000000000000000000000/\n 1543136486311 9854943071851131903908575429289017877);\n bB := evalf(23237132520 76974806855457536/10352378514220126928031114081);\n bC := evalf(2 8308600293241456954311939117138937391141264054325158121088859798090056 999504636993802634122671806566061266984631226363619/158391546540670080 9680657570071738908858776311325098582329879822131693808980297586123565 96464561682203552186100842929847264);\n bD := evalf(2961363523411 97653422080000000000000/3899432561650270968394778037550931439);\n \+ bE := evalf(117048651891177050452812500000000/90395817580787400886448 3503817601);\n bF := evalf(145778296653275182685983/4945417885871 057962703934);\n\n for k from 1 to stps do\n f1 := fn(xk, yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h); \n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h );\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5 *h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76 *f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a 86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + \+ t*h);\n t := aA1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n \+ fA := fn(xk + cA*h,yk + t*h); \n t := aB1*f1 + aB6*f6 + a B7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t* h); \n t := aC1*f1 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*f A + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n t := aD1 *f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n \+ fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + \n \+ aEC*fC + aED*fD;\n \+ fE := fn(xk + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 + \+ aF7*f7 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + \n \+ aFC*fC + aFD*fD + aFE*fE;\n \+ fF := fn(xk + h,yk + t*h);\n\n t := b1*f1 + b8*f8 + b9*f9 + \+ bA*fA + bB*fB + bC*fC + bD*fD + bE*fE + bF*fF;\n yk := yk + t* h;\n xk := xk + h:\n soln := soln,[xk,yk];\n i f prntflg then print('step',k,` `,[xk,yk]) end if;\n end do;\n \+ Digits := saveDigits;\n if outpt='rkstep' then\n eqn s := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,c4_=c4,c6_=c6,\n \+ c7_=c7,cC_=cC,a31_=a31,a32_=a32,a41_=a41,a43_=a43,a51_=a51,\n \+ a53_=a53,a54_=a54,a61_=a61,a64_=a64,a65_=a65,a71_=a71,a74_=a74, \n a75_=a75,a76_=a76,a81_=a81,a86_=a86,a87_=a87,a96_=a96,a9 7_=a97,\n aA1_=aA1,aA6_=aA6,aA7_=aA7,aA8_=aA8,aA9_=aA9,aB1_ =aB1,aB6_=aB6,\n aB7_=aB7,aB8_=aB8,aB9_=aB9,aBA_=aBA,aC1_=a C1,aC6_=aC6,aC7_=aC7,\n aC8_=aC8,aC9_=aC9,aCA_=aCA,aCB_=aCB ,aD1_=aD1,aD6_=aD6,aD7_=aD7,\n aD8_=aD8,aD9_=aD9,aDA_=aDA,a DB_=aDB,aDC_=aDC,aE1_=aE1,aE6_=aE6,\n aE7_=aE7,aE8_=aE8,aE9 _=aE9,aEA_=aEA,aEB_=aEB,aEC_=aEC,aED_=aED,\n aF1_=aF1,aF6_= aF6,aF7_=aF7,aF8_=aF8,aF9_=aF9,aFA_=aFA,aFB_=aFB,\n aFC_=aF C,aFD_=aFD,aFE_=aFE,b1_=b1,b8_=b8,b9_=b9,bA_=bA,bB_=bB,\n b C_=bC,bD_=bD,bE_=bE,bF_=bF\};\n return subs(eqns,eval(rk9step) ); \n else\n return evalf([soln]);\n end if;\n eli f mthd='rk9b' then\n if prntflg then\n print(`method: Run ge-Kutta order 9`);\n print(`16 evaluations of the slope field are required per step.`);\n end if;\n SQRT6 := evalf[Digits +3](sqrt(6));\n\n # nodes\n c2 := 0.1;\n c3 := evalf(2/ 15);\n c4 := 0.2;\n c5 := evalf(4*(1+SQRT6)/25);\n c6 : = evalf(2*(6+SQRT6)/25);\n c7 := evalf(2*(6-SQRT6)/25);\n c8 := 0.8;\n c9 := 0.6;\n cA := 0.4;\n cB := 0.875;\n \+ cC := 0.11;\n cD := 0.32;\n cE := evalf(29/35);\n cF \+ := evalf(8/9);\n\n # linking coefficients\n a21 := c2;\n \+ a31 := evalf(2/45);\n a32 := evalf(4/45);\n a41 := .5e-1; \n a43 := .15;\n a51 := evalf(8/625+188/625*SQRT6);\n a 53 := evalf(-564/625-504/625*SQRT6);\n a54 := evalf(656/625+416/6 25*SQRT6);\n a61 := evalf(9/125-1/125*SQRT6);\n a64 := evalf (624/2375+64/2375*SQRT6);\n a65 := evalf(69/475+29/475*SQRT6);\n \+ a71 := evalf(2781/3125-1041/3125*SQRT6);\n a74 := evalf(-324 96/15625+14656/15625*SQRT6);\n a75 := evalf(-489/3125+179/3125*SQ RT6);\n a76 := evalf(28536/15625-11596/15625*SQRT6);\n a81 : = evalf(4/45);\n a86 := evalf(16/45-1/45*SQRT6);\n a87 := ev alf(16/45+1/45*SQRT6);\n a91 := evalf(57/640);\n a96 := eval f(177/640-69/1280*SQRT6);\n a97 := evalf(177/640+69/1280*SQRT6); \n a98 := evalf(-27/640);\n aA1 := evalf(11/120);\n aA6 := evalf(133/360-1/720*SQRT6);\n aA7 := evalf(133/360+1/720*SQRT 6);\n aA8 := evalf(-3/40);\n aA9 := evalf(-16/45);\n aB 1 := evalf(470183/4718592-151165/28311552*SQRT6);\n aB7 := evalf( 4383785/4718592-151165/786432*SQRT6);\n aB8 := evalf(11515/262144 +151165/3145728*SQRT6);\n aB9 := evalf(-164395/294912+151165/4423 68*SQRT6);\n aBA := evalf(94325/262144-151165/786432*SQRT6);\n \+ aC1 := evalf(305298125802731/4045910400000000-14647079/5268112500*S QRT6);\n aC6 := evalf(-11/122);\n aC7 := evalf(41/329);\n \+ aC8 := evalf(16537188487669/115597440000000-1525917/50172500*SQRT6) ;\n aC9 := evalf(-25653703567069/158946480000000+40277312/4139231 25*SQRT6);\n aCA := evalf(34077244798469/366058560000000-19681743 /238319375*SQRT6);\n aCB := evalf(-7707279308072/103222079296875+ 1694957568/91752959375*SQRT6);\n aD1 := evalf(5563572957441064183 0578893042657311787/\n 9268460869505457246833041514831 067300000*SQRT6\n -232417119936378455400317982496138360 56683/\n 386185869562727385284710063117961137500000); \n aD6 := evalf(3409993271548119342013768905587777/23535182610796 132293329680622100000\n -17578780643899786451499413066603/ 862427135207572832349592925400000*SQRT6);\n aD7 := evalf(-6711803 0646177264636609352228469/\n 162902903316985979443 8119970200000*SQRT6\n -1109333194611029054840182100 205234341/\n 7235332450823932276996909847643300000 );\n aD8 := evalf(14678137743817181963216637657880948291/\n \+ 147118426500086622965603833568747100000*SQRT6\n \+ -4232123093760815813158939759644562095947/\n \+ 11033881987506496722420287517656032500000);\n aD9 := evalf (-4296335534638193278939550773304647774/\n 2677339011 6743705282343344711959490625*SQRT6\n +4206382183846723 96365041268827632707596/\n 12642989777351194161106579 44731420390625);\n aDA := evalf(560153671388999194409675962295798 359/\n 3343600602274695976490996217471525000*SQRT6\n -142895477707667005408073764744257871889/\n \+ 919490165625541393535023959804669375000);\n aDB := eval f(25891603831799418109943073002627816034304/\n 13275 1392662187538691619084196799141015625\n -201582090014 8256583413808194683666432/\n 39333745973981492945664 913836088634375*SQRT6);\n aDC := evalf(73459998957708742701270272 /183725078928931555763697741);\n aE1 := evalf(2217434988233703209 0130010525890693408309951424859/\n 4022309999176318082193 386838093709550597730429075456*SQRT6\n +240994819239866969 854044390572756477821689719112936179443993/\n 88574737301 3148133598593749945518645723805382030108189360128);\n aE6 := eval f(-768064817888172403884064753377704261/\n 94046344 4140469168205260102483013120*SQRT6\n +11963091482382 6378711708444176454195599/\n 2566475240983332966918 0387533549594880);\n aE7 := evalf(-653164793592687107118792989902 3077763/\n 15987878550387975859489421742211223040*S QRT6\n +43790224830262565404128923716569997461977/\n 7890018064616466086658029629781238570240);\n \+ aE8 := evalf(254822663198943144069287976003554026259454356075885/\n \+ 228694960921161983075528239428434956233568591921152*SQRT6\n -50706747964936364580073605427257995964068151492840684769 794379/\n 12567259805413822544889138595006222343548797141 141470089297920);\n aE9 := evalf(-1733092591989465185080172908955 23890942574781527421065/\n 643632448461948023120976165764 338742307364958190027264*SQRT6\n -206782541247304485916480 72388987350751420664845469838588843871/\n 214747605280010 65426570072427064527582522469027865383445163520);\n aEA := evalf( 4139172785614020321239849346537611395519351209694645/\n 3 632640043251973257633071670807716121912322279329792*SQRT6\n \+ -9962955251680145335842499905629640568890016596488294131977095/\n \+ 50177972121616059581405183810495858777502805976586594342051 84);\n aEB := evalf(-48493569126698280163756882264559485385719968 326429264/\n 10220093791944011511903149124481308871858150 7963023701*SQRT6\n +13349059137275431564934999120082932900 55598710128757608261648/\n 829442081936903395980006384798 530262574309330676082452103135);\n aEC := evalf(75497655687102650 367079923118974391699838134443246875/\n 86389066443063 7859158232569081656841740436939028967702*SQRT6\n -18048 6412628461472312239595265512693446271288811024706307414375/\n \+ 19023617939609693818115472753944115488923615336481686162867902 6);\n aED := evalf(-754976556871026503670799231189743916998381344 43246875/\n 199937247534814760429026834649082269681731630 722023424*SQRT6\n -396521437065279187363220546699515032741 1798712940809516313125/\n 1189943440512613149177908775179 333130113799149596003931160576);\n aF1 := evalf(128/311);\n \+ aF6 := evalf(933836797249465937874074716755230897960575/\n \+ 100654665224611304912494211512993860159456\n -656606 3154561714846613955623646285619925/\n 36884062473820921 76156972070871520430144*SQRT6);\n aF7 := evalf(-69149162191900943 563488254283110557265315/\n 627029062054955669946685252 04815847312448*SQRT6\n +36411322734924485028870731838027 9089645830885/\n 30943884212412062311868917188576620648 693088);\n aF8 := evalf(30413626147105175622397327812561375401205 81985585/\n 1172185277850381332435906452020470966793142 866528*SQRT6\n -1043358144220984884256004372474974079448 195163040240185/\n 115595751791703265670917336227326388 809734211868050208);\n aF9 := evalf(-1247309721909840344828143846 9579028509573667740/\n 24728568691455810337720718394800 260319995348203*SQRT6\n -3167624369265402224294674388715 38796708746837530208990/\n 1735855892318949854511797619 94748730297467724252943149);\n aFA := evalf(406737099863299839139 68252403706830937048839445/\n 1529492488622620332888567 9053312482303282696776*SQRT6\n -125505711725062771619653 485154034742374337017381750705/\n 275407723188350104693 08584057619853980896149750098024);\n aFB := evalf(-68776990664758 3549689495908374564279205408222494720/\n 62811134026422 1387269116975906507338718451172730859*SQRT6\n +609177502 125347843180348616081241335046310293684110536704/\n 163 300516549796437960438285892651708589492690550340922711);\n aFC := evalf(4317331931087246966285983049669945333651699336000000/\n \+ 18582689840552028087523063605957151876289406148782963*SQRT6\n \+ -9923315510391313983865809454368259893795378056312387920 0000/\n 53143748900112345480835037673978308026760636183 211303895797);\n aFD := evalf(-9275517820695257154130041708275273 1777673227921875/\n 92398778640988754595926017283178863 599824696391968*SQRT6\n -1827518971589517004006224767017 572667600640689765910103125/\n 264246862693581852138253 077688006067149973724234194599392);\n aFE := evalf(-60/563);\n \+ aG1 := evalf(7437015288634869666684697191122245816427005267745/\n \+ 147432547435188166191909236273418678914030296498176*SQRT 6\n -447446918683070657394417054619986916409739393448087 16067287/\n 6029385001522743229745367569836654303562993 5693406399496192);\n aG6 := evalf(5378430723279353426664824459325 77617925/\n 152890384860543214200817376288219068416*SQR T6\n -71062736577757795940258651008652519442575/\n \+ 4172298134220613503322305768707451945984);\n aG7 := eva lf(6854794678291709986373282391786804521395/\n 25991365 42629234641413895396899724163072*SQRT6\n -30966226229352 135929780528052556881578083205/\n 128267388378752729553 7757378370013874476032);\n aG8 := evalf(-144961289148964578870742 622820802443535339190630695/\n 269122904048359350985231 14557846266785894419202048*SQRT6\n +17730334038574790953 9121872496323334875760354476632016258075/\n 90049256516 24876252217107409496301881944730655508747976704);\n aG9 := evalf( 32222608034056838728656037171998238877669428479655/\n 7 3038734437101490420440329367070466851711700195328*SQRT6\n \+ +67607512619182108117471027162012152342722969862360571773035/\n \+ 15387492972636167617579323485520628170551389838421424871424 );\n aGA := evalf(-7976167822170585532186118591683185214898290501 4135/\n 14652837957573715651468612768155427864652000968 704*SQRT6\n +1765246303419425643706793106141194201650800 30154901156708275/\n 1797722476103372034410009486461037 0786056328228932319330304);\n aGB := evalf(6458617329786749597264 924964904699215303462802220/\n 289941378101682049856067 4347184109100449107571463*SQRT6\n -246412281134139629347 0749181930679903078085640331633667220/\n 32338391541065 1282540206405761350095779783972110478964583);\n aGC := evalf(-577 28747275655796273956203638916035861628792203125/\n 9803 3405514002580477908723330162408100326582447304*SQRT6\n + 85818902383703944171936890577467713286279682236966620156153125/\n \+ 20166090936767214343224533627795532311906882196016509631982 904);\n aGD := evalf(57728747275655796273956203638916035861628792 203125/\n 226886689160509417966158598899675804151716261 39648*SQRT6\n +12004280795477560242456501035398944094301 1927908685160428125/\n 92787327117907932056093297717628 84519446318089478465519616);\n aGE := evalf(-89799890855353984806 45/6602227802120746791424);\n aGF := evalf(2573860174572087/32157 04390486016);\n\n # weights\n b1 := evalf(54248687/172866355 2);\n b8 := evalf(2235875/5723136);\n b9 := evalf(267227875/ 1186593408);\n bA := evalf(33324325/439883136);\n bB := eval f(1807745024/61046938953);\n bC := evalf(1205476400000000000/6851 144673772576947);\n bD := evalf(60488427734375/305788378742784); \n bE := evalf(-1239288094975/3324665305728);\n bF := evalf( 189018151911/873746857984);\n bG := evalf(824401/27451872);\n\n \+ for k from 1 to stps do\n f1 := fn(xk,yk);\n t := \+ a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 \+ + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f 1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51 *f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t* h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := \+ fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a86*f6 + a87*f7;\n \+ f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a96*f6 + a9 7*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := \+ aA1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA *h,yk + t*h); \n t := aB1*f1 + aB7*f7 + aB8*f8 + aB9*f9 + aBA* fA;\n fB := fn(xk + cB*h,yk + t*h); \n t := aC1*f1 + a C6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn (xk + cC*h,yk + t*h);\n t := aD1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn(xk + cD*h,yk \+ + t*h);\n t := aE1*f1 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9 + aE A*fA + aEB*fB + \n \+ aEC*fC + aED*fD;\n fE := fn(xk + cE*h,yk + t*h ); \n t := aF1*f1 + aF6*f6 + aF7*f7 + aF8*f8 + aF9*f9 + aFA *fA + aFB*fB + \n \+ aFC*fC + aFD*fD + aFE*fE;\n fF := fn(xk + cF*h,yk + t*h) ;\n t := aG1*f1 + aG6*f6 + aG7*f7 + aG8*f8 + aG9*f9 + aGA*fA + aGB*fB + \n aGC*fC + aGD*fD + aGE*fE + aGF*fF;\n fG := fn(xk + h,yk + t*h);\n\n \+ t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE* fE + bF*fF + bG*fG;\n yk := yk + t*h;\n xk := xk + h: \n soln := soln,[xk,yk];\n if prntflg then print('step ',k,` `,[xk,yk]) end if;\n end do;\n Digits := saveDigits; \n\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_ =fxy,X_=x,Y_=y,c3_=c3,c5_=c5,c6_=c6,\n c7_=c7,cE_=cE,cF_=cF ,a31_=a31,a32_=a32,a51_=a51,a53_=a53,\n a54_=a54,a61_=a61,a 64_=a64,a65_=a65,a71_=a71,a74_=a74,a75_=a75,\n a76_=a76,a81 _=a81,a86_=a86,a87_=a87,a91_=a91,a96_=a96,a97_=a97,\n a98_= a98,aA1_=aA1,aA6_=aA6,aA7_=aA7,aA8_=aA8,aA9_=aA9,aB1_=aB1,\n \+ aB7_=aB7,aB8_=aB8,aB9_=aB9,aBA_=aBA,aC1_=aC1,aC6_=aC6,aC7_=aC7,\n \+ aC8_=aC8,aC9_=aC9,aCA_=aCA,aCB_=aCB,aD1_=aD1,aD6_=aD6,aD7_=aD 7,\n aD8_=aD8,aD9_=aD9,aDA_=aDA,aDB_=aDB,aDC_=aDC,aE1_=aE1, aE6_=aE6,\n aE7_=aE7,aE8_=aE8,aE9_=aE9,aEA_=aEA,aEB_=aEB,aE C_=aEC,aED_=aED,\n aF1_=aF1,aF6_=aF6,aF7_=aF7,aF8_=aF8,aF9_ =aF9,aFA_=aFA,aFB_=aFB,\n aFC_=aFC,aFD_=aFD,aFE_=aFE,aG1_=a G1,aG6_=aG6,aG7_=aG7,aG8_=aG8,aG9_=aG9,\n aGA_=aGA,aGB_=aGB ,aGC_=aGC,aGD_=aGD,aGE_=aGE,aGF_=aGF,b1_=b1,\n b8_=b8,b9_=b 9,bA_=bA,bB_=bB,bC_=bC,bD_=bD,bE_=bE,bF_=bF,bG_=bG\};\n return subs(eqns,eval(rk9bstep)); \n else\n return evalf([soln] );\n end if;\n elif mthd='rk9c' then\n if prntflg then\n \+ print(`method: early Verner Runge-Kutta order 9`);\n pr int(`15 evaluations of the slope field are required per step.`);\n \+ end if;\n SQRT6 := evalf(sqrt(6));\n\n # nodes\n c2 : = evalf(1/12);\n c3 := evalf(1/9);\n c4 := evalf(1/6);\n \+ c5 := evalf(2*(1+SQRT6)/15);\n c6 := evalf((6+SQRT6)/15);\n \+ c7 := evalf((6-SQRT6)/15);\n c8 := evalf(2/3);\n c9 := 0.5 ;\n cA := evalf(1/3);\n cB := 0.25;\n cC := evalf(4/3); ## outside step!!\n cD := evalf(5/6);\n cE := c4;\n\n \+ # linking coefficients\n a21 := c2;\n a31 := evalf(1/27);\n \+ a32 := evalf(2/27);\n a41 := evalf(1/24);\n a43 := 0.12 5;\n a51 := evalf((4+94*SQRT6)/375);\n a53 := evalf(-(282+25 2*SQRT6)/375);\n a54 := evalf((328+208*SQRT6)/375);\n a61 := evalf((9-SQRT6)/150);\n a64 := evalf((312+32*SQRT6)/1425);\n \+ a65 := evalf((69+29*SQRT6)/570);\n a71 := evalf((927-347*SQRT6) /1250);\n a74 := evalf((-16248+7328*SQRT6)/9375);\n a75 := e valf((-489+179*SQRT6)/3750);\n a76 := evalf((14268-5798*SQRT6)/93 75);\n a81 := evalf(2/27);\n a86 := evalf((16-SQRT6)/54);\n \+ a87 := evalf((16+SQRT6)/54);\n a91 := evalf(19/256);\n \+ a96 := evalf((118-23*SQRT6)/512);\n a97 := evalf((118+23*SQRT6)/5 12);\n a98 := evalf(-9/256);\n aA1 := evalf(11/144);\n \+ aA6 := evalf((266-SQRT6)/864);\n aA7 := evalf((266+SQRT6)/864);\n aA8 := -0.0625;\n aA9 := evalf(-8/27);\n aB1 := evalf( (5034-271*SQRT6)/61440);\n aB7 := evalf((7859-1626*SQRT6)/10240); \n aB8 := evalf((-2232+813*SQRT6)/20480);\n aB9 := evalf((-5 94+271*SQRT6)/960);\n aBA := evalf((657-813*SQRT6)/5120);\n \+ aC1 := evalf((5996-3794*SQRT6)/405);\n aC6 := evalf((-4342-338*SQ RT6)/9);\n aC7 := evalf((154922-40458*SQRT6)/135);\n aC8 := \+ evalf((-4176+3794*SQRT6)/45);\n aC9 := evalf((-340864+242816*SQRT 6)/405);\n aCA := evalf((26304-15176*SQRT6)/45);\n aCB := ev alf(-26624/81);\n aD1 := evalf((3793+2168*SQRT6)/103680);\n \+ aD6 := evalf((4042+2263*SQRT6)/13824);\n aD7 := evalf((-231278+40 717*SQRT6)/69120);\n aD8 := evalf((7947-2168*SQRT6)/11520);\n \+ aD9 := evalf((1048-542*SQRT6)/405);\n aDA := evalf((-1383+542*S QRT6)/720);\n aDB := evalf(2624/1053);\n aDC := evalf(3/1664 );\n aE1 := evalf((33617-2168*SQRT6)/518400);\n aE6 := evalf ((-3846+31*SQRT6)/13824);\n aE7 := evalf((155338-52807*SQRT6)/345 600);\n aE8 := evalf((-12537+2168*SQRT6)/57600);\n aE9 := ev alf((92+542*SQRT6)/2025);\n aEA := evalf((-1797-542*SQRT6)/3600); \n aEB := evalf(320/567);\n aEC := evalf(-1/1920);\n aE D := evalf(4/105);\n aF1 := evalf((-36487-30352*SQRT6)/279600);\n aF6 := evalf((-29666-4499*SQRT6)/7456);\n aF7 := evalf((277 9182-615973*SQRT6)/186400);\n aF8 := evalf((-94329+91056*SQRT6)/9 3200);\n aF9 := evalf((-232192+121408*SQRT6)/17475);\n aFA : = evalf((101226-22764*SQRT6)/5825);\n aFB := evalf(-169984/9087); \n aFC := evalf(-87/30290);\n aFD := evalf(492/1165);\n \+ aFE := evalf(1260/233);\n\n # weights\n b1 := evalf(23/525) ;\n b8 := evalf(171/1400);\n b9 := evalf(86/525);\n bA \+ := evalf(93/280);\n bB := evalf(-2048/6825);\n bC := evalf(- 3/18200);\n bD := evalf(39/175);\n bE := evalf(9/25);\n \+ bF := evalf(233/4200);\n\n for k from 1 to stps do\n f1 \+ := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h, yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn (xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n \+ f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75* f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a8 1*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n \+ t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9 *h,yk + t*h);\n t := aA1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f 9;\n fA := fn(xk + cA*h,yk + t*h); \n t := aB1*f1 + aB 7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h ); \n t := aC1*f1 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n t := aD1* f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n \+ fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 + aE6*f6 + \+ aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + \n \+ aEC*fC + aED*fD;\n \+ fE := fn(xk + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 + a F7*f7 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + \n \+ aFC*fC + aFD*fD + aFE*fE;\n \+ fF := fn(xk + h,yk + t*h);\n\n t := b1*f1 + b8*f8 + b9*f9 + b A*fA + bB*fB + bC*fC + bD*fD + bE*fE + bF*fF;\n yk := yk + t*h ;\n xk := xk + h:\n soln := soln,[xk,yk];\n if prntflg then print(`step`,k,` `,[xk,yk]) end if;\n end do;\n \+ Digits := saveDigits;\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,c4_=c4,\n \+ c5_=c5,c6_=c6,c7_=c7,c8_=c8,cA_=cA,cC_=cC,cD_=cD,cE_=cE,a31_=a31,\n a32_=a32,a41_=a41,a51_=a51,a53_=a53,a54_=a54,a61_=a61,a64_ =a64,\n a65_=a65,a71_=a71,a74_=a74,a75_=a75,a76_=a76,a81_=a 81,a86_=a86,\n a87_=a87,a91_=a91,a96_=a96,a97_=a97,a98_=a98 ,aA1_=aA1,aA6_=aA6,\n aA7_=aA7,aA9_=aA9,aB1_=aB1,aB7_=aB7,a B8_=aB8,aB9_=aB9,aBA_=aBA,\n aC1_=aC1,aC6_=aC6,aC7_=aC7,aC8 _=aC8,aC9_=aC9,aCA_=aCA,aCB_=aCB,\n aD1_=aD1,aD6_=aD6,aD7_= aD7,aD8_=aD8,aD9_=aD9,aDA_=aDA,aDB_=aDB,\n aDC_=aDC,aE1_=aE 1,aE6_=aE6,aE7_=aE7,aE8_=aE8,aE9_=aE9,aEA_=aEA,\n aEB_=aEB, aEC_=aEC,aED_=aED,aF1_=aF1,aF6_=aF6,aF7_=aF7,aF8_=aF8,\n aF 9_=aF9,aFA_=aFA,aFB_=aFB,aFC_=aFC,aFD_=aFD,aFE_=aFE,b1_=b1,\n \+ b8_=b8,b9_=b9,bA_=bA,bB_=bB,bC_=bC,bD_=bD,bE_=bE,bF_=bF\};\n \+ return subs(eqns,eval(rk9cstep)); \n else\n return eval f([soln]);\n end if;\n elif mthd='rk10' or mthd='rk10a' then\n \+ if prntflg then\n print(`method: Curtis Runge-Kutta order 10`);\n print(`18 evaluations of the slope field are required per step.`);\n end if;\n SQRT7 := evalf[Digits+3](sqrt(7)); \n \n # nodes\n c2 := evalf(.14525189603161505176175485287 7003332031451125132994706083846874198397645560717967340061510556541732 5593567662597838466104333028669369682574502298151863694411535301626927 9797059644918456307016180392660267268391223810241183498117829183716273 7600957038720436698632422242168097891507517094661743431492244598369151 5917675543826985104502700379398273843376174849487132298887350598398607 2152657669526399259394155415325495501740532090647250152538344680405238 04415951457102521100298113257526671516447795421971380010);\n c3 : = c2;\n c4 := evalf(.21787784404742257764263227931550499804717668 7699492059125770311297596468341076951010092265834812598839035149389675 7699156499543004054523861753447227795541617302952440391969558946737768 4460524270588990400902586835715361775247176743775574410640143555808065 5047948633363252146837261275641992615147238366897553727387651331574047 7656754050569097410765064262274230698448331025897597910822898650428959 8889091233122988243252610798135970875228807517020607857066239271856537 81650447169886290007274671693132957070015);\n c5 := evalf(.544694 6101185564441065806982887624951179417192487301478144257782439911708526 9237752523066458703149709758787347418942478912488575101363096543836180 6948885404325738110097992389736684442111513106764724760022564670892884 0443811794185943893602660035888952016376198715834081303670931531891049 8153786809591724388431846912832893511941418851264227435269126606556855 7674612082756474399477705724662607239972227280828074706081315269953399 2718807201879255151964266559817964134454126117924715725018186679232832 392675037);\n c6 := evalf(.65363353214226773292789683794651499414 1530063098476177377310933892789405023230853030276797504437796517105448 1690273097469498629012163571585260341683386624851908857321175908676840 2133053381572811766971202707760507146085325741530231326723231920430667 4241965143845900089756440511783826925977845441715100692661182162953994 7221432970262151707292232295192786822692095344993077692793732468695951 2868796667273699368964729757832394407912625686422551061823571198717815 56961344951341509658870021824015079398871210042);\n c7 := evalf(. 2746594919905254008808021630247618520892150865127407293922085868737635 4754025435334983507405420257457181957440349833017002879800807354331158 4157800872690651609693221442066033072660562659647090009723279518425973 3724675529231742806493680604713020597042477668773207101439689234270846 1972173560204886751087822039608733264973211447020887964362884182912746 1988891656306477090638957802859931928546375769121998092390623519621159 5896420446565064435623454658500449838723780364652662075223497051170650 669675007842454);\n c8 := evalf(.77357752011066094484058250080939 7371858954291342680755641266267305460793802904338650093226298866975907 4375188104380332641488840910749170584251599743427942806671491279663807 5063056824432788568177282749295458631536994033848382465246886274399208 8638648741443350972175194771136615723705539761206242152176309067981875 2388703785481393625790119650542155389505593007215341469986735309800890 0126972921977982894590506689234766623627810097576114222422746975130169 34683567284758003336320735305894162221457561565877089);\n c9 := e valf(.5801831400829957086304368756070480288942157185070105667309497004 7909559535217825398756991972415023193057813910782852494811166306830618 7793818869980757095710500361845974785562972926183245914261329620619715 9397365274552538628684893516470579940664789865560825132291313960783524 6179277915482090468161413223180098640642915278391110452193425897379066 1654212919475541150610249005148235066750952296914834871709428800169260 7496772085757318208566681706023134762701012675463568502502240551479420 621666093171174407780);\n cA := evalf(.11747233803526765357449851 3020330924817132155731947880336208822081472341480586742938251364635133 0634522263696356630272310744883473369570661096469585521401362191500842 8958959006576336096576632625544880003330385170524454637971835117226367 2585898542916557161227030654119202430713345664130966656437375797037664 8478191264373904793205372438028211487022074363600988242905502385324415 4966568779771893204334295144581339422298833705099887796306476659755527 28543592731064133995517475866825660531789327429053458004470);\n c B := evalf(.3573842417596774518429245029795604640404982636367873040901 2479173615103454290020090916213599746849134790032545719717649828031231 6061909795335706924933525179858529207152085321136543134775072614009881 7076200722517984763824550281897943135653357469258264310677054444833310 7993221937461089786601490977377812345590509095987769592624379750297681 3342977979345937845802226156107136436524238759021197731307273933116052 5901545637009825475306232826714868102098182061674441427924908712057484 203326064974293576900196793);\n cC := 1-cB;\n cD := cA;\n \+ cE := 1-cA;\n cF := cB;\n cG := cC;\n cH := cE;\n\n \+ # linking coefficients\n a21 := c2;\n a31 := evalf(.726 2594801580752588087742643850166601572556256649735304192343709919882278 0358983670030755278270866279678383129891923305216651433468484128725114 9075931847205767650813463989852982245922815350809019633013363419561190 5120591749058914591858136880047851936021834931621112108404894575375854 7330871715746122299184575795883777191349255225135018969913692168808742 4743566149443675299199303607632883476319962969707770766274775087026604 5323625076269172340202619022079757285512605501490566287633357582238977 109856900048e-1);\n a32 := a31;\n a41 := evalf(.544694610118 5564441065806982887624951179417192487301478144257782439911708526923775 2523066458703149709758787347418942478912488575101363096543836180694888 5404325738110097992389736684442111513106764724760022564670892884044381 1794185943893602660035888952016376198715834081303670931531891049815378 6809591724388431846912832893511941418851264227435269126606556855767461 2082756474399477705724662607239972227280828074706081315269953399271880 7201879255151964266559817964134454126117924715725018186679232832392675 035e-1);\n a43 := evalf(.1634083830355669332319742094866287485353 8251577461904434432773347319735125580771325756919937610944912927636204 2256827436737465725304089289631508542084665621297721433029397716921005 3326334539320294174280067694012678652133143538255783168080798010766685 6049128596147502243911012794595673149446136042877517316529554073849868 0535824256553792682305807379819670567302383624826942319843311717398782 1719916681842484224118243945809860197815642160563776545589279967945389 240336237835377414717505456003769849717802511);\n a51 := c5;\n \+ a53 := evalf(-2.042604787944586665399677618582859356692281447182738 0543040966684149668906975964157196149922013681141159545255282103429592 1832156630111612039385677605832026622151791286747146151256665791817415 0367717850084617515848315166429422819728960100997513458357006141074518 4377804888765993244591436807670053596896645661942592312335066978032069 2240852882259224774588209127979531033677899804139646748477714989585230 3105280147804932262325247269552700704720681986599959931736550420297294 221768396881820004712312147253139);\n a54 := -a53;\n a61 := \+ evalf(.653633532142267732927896837946514994141530063098476177377310933 8927894050232308530302767975044377965171054481690273097469498629012163 5715852603416833866248519088573211759086768402133053381572811766971202 7077605071460853257415302313267232319204306674241965143845900089756440 5117838269259778454417151006926611821629539947221432970262151707292232 2951927868226920953449930776927937324686959512868796667273699368964729 7578323944079126256864225510618235711987178155696134495134150965887002 1824015079398871210027e-1);\n a64 := evalf(.326816766071133866463 9484189732574970707650315492380886886554669463947025116154265151383987 5221889825855272408451365487347493145060817857926301708416933124259544 2866058795433842010665266907864058834856013538802535730426628707651156 6336161596021533371209825719229500448782202558919134629889227208575503 4633059108147699736107164851310758536461161475963934113460476724965388 4639686623434797564343983336368496844823648789161972039563128432112755 3091178559935890778480672475670754829435010912007539699435605026);\n \+ a65 := evalf(.2614534128569070931711587351786059976566120252393904 7095092437355711576200929234121211071900177511860684217926761092389877 9945160486542863410413667335464994076354292847036347073608532213526291 2470678848108310420285843413029661209253068929276817226696967860575383 6003590257620471353077039113817668604027706447286518159788885731881048 6068291689291807711472907683813799723107711749298747838051475186669094 7974758589190313295776316505027456902042472942847948712622784537980536 603863548008729606031759548484014);\n a71 := evalf(.8233707757482 7165851734543443101252960668143185217422417623190517729636276959552630 3384271952081560749057128539248740162294754018566632145268442498240853 0265012495875649436964577162815499784391844154251516757783441246537637 0657344092730220946299233373915128860570981937149008855462300751157609 3699496728214163231377591505461365236050729455904581497454571182398914 7138146261272588399022237614736777380433145332416738674461185882928270 7694976569003227868550772631338959210735297844082621117978566086870976 57e-1);\n a74 := evalf(.21191719632028035616878434685553055531756 5880762927431290298559484008657022456715266369613585649942284664547478 4737109509260470835381351367546064604540662877550401996678728267405331 8584763583141395883652094577149124258069020841178906843200460941449781 9451599462242176778339872690929245469601064632088623594849667233447948 1952249822391746508632929187100848732561372190096028950133179693271192 5344359192919320282978883292400016192371705811872529314413880303771133 68256802530345437489597300716880144897526715);\n a75 := evalf(-.3 9973435080542183115779325500613201623798400498163478076301187861076744 7785020657962828027306214950091431010987581510683005672610199523064033 6755783924707521151708631864340115908387110223622083681133593777807385 0984682262429957839511757517627476658990042245044398674992348233548097 3406172585068847765610533007284967218867025564932527687985466219213858 0873481042975142141291701569904648585913592688512720219981871400797485 4704198969501432778361006826569882307754220507512995118038620380746260 35682075572547e-1);\n a76 := evalf(.20378653175960061976062598226 7432454347794630627593537605880247331019990193401512494098360039659712 2139241516985789627117384278369869726670607464843378613641604514933634 2237845439619759249635514134236420090697897797189119025169355718655763 3738226320444423940422956602457827790863255161321018817502491428574308 2545816452007566519628816483093469998039225563497070753812098636707935 7018864910110884641391769934288277409465832325490626242062638844325309 94327769616409233331543279879528314662166074374491632281e-1);\n a 81 := evalf(.859530577900734383156202778677108190954393657047423061823 6291858949564375587825985001035847765188621193750209004867036268320934 3452768562047239997149199364518572125329597861181174249369765075752536 3881060651461522155931648694058298736382213431820720823825945524639105 3012629063596728219568958246135292322977576391543004206090437361989021 8339357282105617700080170460777630392331121000141081024419980993989451 8769275184706975667750845713582474966390335214964840809417555926257859 4784326846912730623962085596e-1);\n a86 := evalf(.291176947805885 0960337179621761553399856026049598393013981874594942289837064329699999 8008343140820846646030367053787873171602280531901676944703271533763470 3410233985946790773250896890829870214384041881242503413539557747613055 2591995085567953863050980525583967480237052055722341134236837491134141 7213532980232721182542225296183599207184877608223462955904116454940017 3358142357995263592555076554319153039999293754407579832185484172338235 7410527264492088162367303073645182221776655223040370242257565714922103 );\n a87 := evalf(.3964475145147024104912442607655312127779123206 7809914806071588922173616634059310880010278438980688122903971304985148 4169749651942303131726930887261855960212738343016689992116198497104128 2503916362492236060177556781669977058999874394805489753591514786065023 5967168757903543809097431457381640324551868805603587889949801808352539 8996887272970632623627285900436091963512862900780653704408573571641040 6949119163212610125679333950500283383351249272466630593557351423401695 265188286220604421107287926933454746426);\n a91 := evalf(.8612093 4856069675499830473722921191788985145715884380999125346164865752435088 9595762799099590535500521951925238182966719853249867016997506449885127 6863139452739746151188223200379373032556539816611556073908480464079413 9245269541388135110170994242974566918498057449191605380443547365655793 7280386770977531579589197043273663618045774746165664220513392972302346 5063954370883670169114272084448157329580126936833752512464253021064796 0192158411681573780906633843156901412344959017633186022649852856070509 62011565e-1);\n a96 := evalf(.13974648268244420890363138910011898 0107442531458232673771628856352118359545509026848027937030730232324325 4445408081697475302124805725096303589446134195204030963470460127370290 8427899763230796015658145829144408467266229610152419384759003621647763 9528326633344036093249660438445063442651964739296083449147878900769282 4180590293907054416146347632902007927136496089447464576371767823906376 5089184188857855657172413739031115814469428932355557871520526011565374 09868526724736461574863373644197280932248106893204);\n a97 := eva lf(.395109849581567459990052605600128421529412584040417692433465398777 0478924197803010467630827149707627366762774492212516890102269105222572 4206782615009092720502117403074526841178138732754751924950666255050918 7859938585516053307694773459595371802395787404755222847012256099292730 6517756313857822072795790033126335741444571636386587757165303566999760 1168482149190555347236566444424681152338325687647481880055795101864694 2450531961463448796662254568747620282758619166625247678267814502144668 8317497394069513963);\n a98 := evalf(-.40794127037085635763077592 8161205645316245427075241804732699008149364090482000334835010099806043 1318261877540601919316041410130949027882925288929552198329214455669229 5102109896533872259478346499738949823777012724586697537232940657537683 7652077993037422245517114233012867591574698047843233448604259936725485 0685670204980511874953669850258409465589756184590062398715228313317448 5278130926333376824326917069212511901146461678727981143653984480745475 16630024149537435321603321887887758967624608971760982005432e-1);\n \+ aA1 := evalf(.723314442233794807761634822911932631558293087108902073 3092900891206129381937795204778409850809108881154328238749658657292651 7596402013385285974402881069869273730407154645440343792325216373295314 2886643888226768668006209411434353561578516868770591129363226551505517 1284803200587876993046496361076654500027258338019481872710839577903507 8733382769668491279688194770030921632324873265859035825869450389715344 8815272466074130762598100738239358825159726791635368778101410227178433 3808427823263184762229245322729e-1);\n aA6 := evalf(.220027628468 9998102140972735735070061373242800181187459951219347361114857342828430 1574830946846296647303272427115939021484976341690015623830969870319876 8390638904089137669693807632354818989246992246820668264881817151340940 0650094787805971889045494412998078291319125253326085996862605377214775 1827968322495762933152035009240314358507005752961463315724376898807683 5071001843101010406055350559622023204125178966751092435528698269929021 2326709692142943528359830746504440557871235891532354100391199867710878 604);\n aA7 := evalf(.8789533425436734013369780264792573637952226 4877532964168238468762170407956884893713343972400698732955106671614959 3224433593804084425174643766952565933407699134512668074765904346971250 7851122380904984207479561078259350882817777730832098095584185933093538 7276494561484767020754437007440978312665000795864477821327901565077267 9125784547177098287135607362125767753957361718506262141692415680776083 7572648802692106209693976886776742984630810980639068471572007009240155 622510003520969764084048763725214493683430e-1);\n aA8 := evalf(-. 4445383996260350863990674880611108986832860648196030000580004690002268 1089842386417299212335704945184494160221619848107064243836200653824201 0604629921457746503690881137419018764771819685917306309278437389728009 1142266749995904610367880634991713607794267732443316779154479505936719 6351102221101740135687603739564556573414549230494281982638394122810438 9318009097355902398182319663460593387929537949090554502672883723775676 1508602181453516412162886400092865766596879102523827151659356567777137 230061823406338e-1);\n aA9 := evalf(-.218328228948875468909553296 6861839909872150913926337371522805434288481649401165594213258034064147 7960296214841633242389299692923820707619766166094112889311895656659069 6460232643881262179515709229208683359606516849878256829708824867316950 8958077888906716792093132038122004355872891774270958762549310913644394 4665593372309175090091103406851328329136859596935331297469761697537858 1829408817951214011068321654688657840616805976212269163764785938936814 8924316592724799507266191439377755356264544896552444434116);\n aB 1 := evalf(.8947100936731114228785441966773836169071038390882857211057 2691585227049715853658452233144842098220329661690363168219220567159946 2009326875104000429996189337342083745332254517410164158854798747529206 3905143258743058470801215169643422982637395268857091103997361044896231 9077070256165830821861439813860397455265862279680850970714418349658210 4898327366711071383058607106591804987231720501754689903196296623570856 6277020059983629436710932829501226749223180920308912790068469179118936 613889568216806026934921461e-1);\n aB6 := evalf(.3946008170285561 8607413976547550223009294342627013855300481271402236879937786616543161 9603006080321045950657048978428767774832537128647585808904296146327483 1444325125142749430966257205225348938233990561449741135817207214208767 5512684257210467847771120061193452920208043280229120761002470227077066 0340053219267365469281597800051719716365415293063479555886607707827724 3943017197415632624227468115544611555103179841154225108037641923595719 863916636426362961098752359947472060627591257437601756055337717664162) ;\n aB7 := evalf(.34430113679633334877137649860671046756543718575 0467029068808676069635459619559635401088110600093496371935088524047917 0718024837173315953535120144593601507220373228658093718612392626258448 6253565497755359008673442283791906402784815951698795140729993662176871 0276818396288896644611007143366620098639792168302609977686277827091254 0008337820579832949602385303598879942811640964391329379651140966306117 0823812312788071375039074743116385183412475846654222093887410414465018 00736835907746380589010425127474281955);\n aB8 := evalf(-.7946682 6642926612906949381131194309970538151408637723287641508665824924258922 3139578033663133331696701112628064561155665142077542036573812981400470 0919780135756091038268288247370472942132011149953543402658991000221484 3758464288162772671955001615052742515035525773401960777463465648140103 2596188322200689301697137090534536832160056832983808960805825586823836 1268756053707709613862411741855147501215595624677706819429261712031718 1251025054569494908314639402449051473305256066685878055786094549338100 23032516e-1);\n aB9 := evalf(-.3915218947895966123834967996391962 8533805458088400912680642778127525534991145694441797535613747037672953 5847672541272995349956130395608450197471826563374157699873635322104052 4666568980564845787218801071398312736344521222835638217635031491392899 2533955983787744621270600006632323452396092147778050799442659106840076 6309126252560335713530489527132614560903876486768999573365124934810401 2725632261663691666277018692505171832846250114464266801060925589561986 171753142798158442651049681323221668374109982938218);\n aC1 := ev alf(.32100068779632092129452827360722418867414253142985324002169272626 1948847918621452331185974214956041445032115423225926081638423774842136 3689615091383232620323001741545083693993984068765863010962556195979935 9934087397700120007987414420105279975004864417807599988806232102574723 6009735890079487152400362117128822794626062874891271218831540350197564 9668808122210614745874488679423543473014944173322736815919685085967952 3013285215375984622559887949226028516881704006126062662764423835185681 94345914720483213327e-1);\n aC8 := evalf(-.1846375997512050141835 1638817532279109963232047497692266554640780487695052095252997517635211 7800382992656307129009418262954841941931925615600848601595667113285440 6268719210981730565890047222180067884756097546680339546606095252551477 6671655286630910069553714446797199014258250115148686828972220255778005 4488734873552415218882063362881291888087979663787285456028678967251075 6285739873712313129826393997352797986193871926042656186906820012302293 374070202255183584286377842605437238570271650603545445667948047e-3);\n aC9 := evalf(.15608940253132198607591491625572833834301814757262 2851720366306364962628807933790989825527019698903444176645418935541940 6323195968641890340232543486354848649224375176644708900595110442941899 1048302936538114189900980864359226030087363119353925250410654393052068 7960717642388761933238169987200075600708170219269165044096856233619506 8231291195237152243304488111556194465675586791136875438727840919681421 8602939012156290183842748654936394062854548515378262803988622057567411 28964048582471898149854836925512958);\n aCA := evalf(.19344968576 5456025274998422038518872713852628767074430997009327871560657714008402 2991810182297935606927956591183236154952186082476162421662200922905070 2420520239471776204172187805331129997769579940033299025490121584693914 9606780465562651141686714986479495276369762858345872675248479222017416 9489180659996205068966871961480223644521365800407728767411497501579344 8552223943854485192393949038815807116608112588480144209554108888349999 8686987712680986206041073524072785082259372952091070217823860200146637 6907);\n aCB := evalf(.261161238763663649690892847753645228826316 3392010050661129958478089356710938164130986878976836612407536168147703 5008287596787230391537729314039637069323521389990658259743704808422487 8561134392300133422684780768556504289343706266707220251419891716525228 3944346534548328193742023438496079897090726699692750459253027197754275 4752718501704128322876153814956924845755009530823062090328901483741959 8408689040267101425780303098820132662720149153597303761571628062959916 1493278780210145190213310853261658105259958);\n aD1 := evalf(.442 3749328524996327035388417792688154433173133294892285295756457561276315 6484772337316502225136213951995517243390141466263173460743325703132330 5071936024518996727396947323967416022404413805886393634980219013527271 4309580079529701428669853556309884734910875756338909478358922199988512 6471134368111982717754693853645557126038493951005153857778846255302680 6444792828192378662035795441635957880251989379524333523638549403441835 4711762364189267450716858130863478364272033888044693056215737306793777 268420026189e-1);\n aD8 := evalf(.4640774434539039636406222168781 9816165341156432081144556896987891199417324448570477981519089231346744 5434795768251569788600304930141230042696589540455022819753656512890260 4229552619160504877383218701867501085632055326829980676764751534055038 9238739771245472690325163558576088437172800639792062403631816918394534 0290293871244664549198007342207487759557866991413182167933592396743380 9641408623858302890004745520607707249760260653357255783660427177567381 193336713814874323418675306383333149393266793993467442e-2);\n aD9 := evalf(.47046602826151365321309272181723905709032309814141593479042 7794653792000182490327658613911726082389920849468942049850302453970477 2322714265976443062919223948767379592583222124954604345889955423553965 0211567057098109716026051189120252150564228469940449489412992211902302 8219246653535059822217781627305177009919878974504566435453534534134902 9453821026356074088030803755398230488812374923478566813504882650448349 7463881300722909835575182192959537296299305201097250791918861773974285 17964189944324843820503168e-1);\n aDA := evalf(.86207499480114881 6036944516741600279920531739701361904439127070633956170028152652970273 0934707995140372840665395768481987151990931675091504465417623295004123 6530353000893923549952175603477483670873492227604715980803694840722195 6391558629896073890903958167585763041037740389454982332965507871816132 1394141961557198485773069048126412246444370650933673992947486462583752 4417961198429420201758931892571918843877229754225364371191643023989725 03381846036461283306313828198386850125158923344068113848485808994276e- 1);\n aDB := evalf(-.26079830246821380932332540790666876231486824 2631739511171929964139011865280294960003504005593962654410700681585923 8708045112894508485276690601924564567054283534756547866703491785385888 6148186145936124143413301372093107803844563076971342338575640530616288 8744300221345359231428408704390244061036672589063890246282660512280327 1573498816656193646643818839108772357190193849884078857067143389364606 5809307123410775996588090128808580391988246920654505518601157034255080 29179588224296106969058601705596195735588e-1);\n aDC := evalf(-.3 8580201743966215324932776391594995813332350765312989778200931398133993 9013776885094015894592182101289667809549799127027404761746629062282480 4880526248428176691580398210452078703585881234799152761041815185705836 0774179313986444289211231219963698304998089374940261363477953844820654 6390770599930852344145132684195382796335729309418410424821168000342769 9834359048606381857111129529478344212867097570932921723444146117783185 8101791225016580810080324439647432140077129272390671906215830919279152 81146673090089e-1);\n aE1 := evalf(.23180467174294115670060435396 1327560794075802170933256972935299077733639015831163052938068619593553 9989142081515220636741766147640400210173706272232903564136138369905156 7581145222290902156899207714968523053703428875297515967927843296201076 4123162466387801177738797136332677224793498797438058629717648138621215 7873510396075239502586977309920573875077459252455139903807006380697777 0278319449629741016570288128037211753539244044906569813381112669158886 08189214693616654119406747191344341630726810243801292966e-1);\n a E8 := evalf(.319785678411636706730212432258210005886402783819712008912 9330601737324659881765852592617837547330979053557152959792274298365949 2391255933368757895548959126740380966364354655028227991842220167081043 7377241957193905305759241027828019012378579522116473152847955564359657 0789164770208760753988495278071561771549327323883774356590072594880832 2375814092038631514513634085597107151880823471437327249123191353818613 7086228712275496547973034818699834720991279272905371010059367199834081 3460184038328693248987401896);\n aE9 := evalf(.593323333184189868 6063939886797828376866051205773280426848164018120869674204443797947555 2415078084269185448823149806942080617505111266516604719265044534274182 1587826001106669731465937591572704070918658133395069392428354931355632 5795072460859614050984050751366870629310969770171517379200671055763403 0136852683561956893173456115472705029046984171620657715608609764422267 5210137312760126513401535747780390864719443380299944246729332960392872 2456808658312166092668857170427109605711090179594338667452540588727); \n aEA := evalf(-.11624150821070040736463760388757736252361114516 7736894086884487796841471784963169307467859406253314253773342213804055 7713257326308667787902543763784125430521138102645403786443730058016654 5133057609308579151067857011035222729409658322268274280342910137251629 0647561466855518733303125581113950272443361897697144540105700468824973 6992528526577711090040027839705063907069416589079456453136288939375117 8076316348669064989408330200946465315120360481219600884006292236703865 12601569625156581991167980243271299848);\n aEB := evalf(.18039505 5703050235734406319573782790447624018066276446823204253785889220351813 4072359383282952587457447226455032447512432186131148582641359359691360 7125619716961909493756603212541600149169474159162234771715841694957191 9818182784826517617045453557659259309681032094945392991304795501521609 5475918324393295294067661183147674612860161825003464444081431102017851 9653488469652243967824496479518511214800167255828854964662689313675556 4404596636905662477348632400678323483152006902836261283309444239223152 2709372);\n aEC := evalf(-.45540142988572207268635052569265490223 1646071235365868887315070282766376286175067492620459754498952035011009 4645097413400341146303046894742623761407299827980000151099283090704954 8987052172441873264211616509040959711547477492439547907813259517959889 7709955353156147800893477686478575340982706301846248851947949469332067 0065813200348563166593964701540199636603075938054891243891349565289434 4508212827102586030560965338873318733410100924483311752768912615045322 93191426446722681340510127831022135739742171969);\n aED := evalf( .337486065587983899735416440651992949838085557990745058519743490318653 4889285340052665875114628871610947337121967765154190063143475470204609 9930209625515986613827500654531129151834816281378340737259305030773285 2785799949115965967621703699964735089605069297525715657901344413184988 5713943106915779621520229069494935006021864931301682747193567688729297 3812199100777496077938295275392607077331131872799666568070578961290182 7314266910729709680026051118935427435582117355641073073453370854714268 0252972124638056);\n aF1 := evalf(.262436432579810589152773398585 8552391723553030719144065844544880498188553839263944446686664322145159 4625632596921646368922260666137741402895718862972142046810540765960945 2288970422060934970936306875008276230937314843329322643343753178524991 2207062039573742698472755042359523441484880424280641023336207108658534 4518532793177966403251704062244673838946125724750949325230656019325165 0120402140539844922433876303025738297938104494760382095240091799880998 9635858329727281083715569193381168029332908857437475009e-1);\n aF 8 := evalf(.4863139423867266106526843913609225996253073727381961544415 2632394315715860436223327603730232548126557932089444003265848387845502 6840361840726974421701265590448413023431147531190351412244918734387828 4961610121212769016094981132210596236034472106007606475346793388340688 8007768468292781141166603029471094777571622341894250014833150468374361 8772401665455849136403151867244228318678758083866485250388035748651252 5760113218884481212148815623223363909555519708223118484786785518735680 595161660521413344094696096e-1);\n aF9 := evalf(.4274382538346478 8676369424294217243675918665857741441802151226609808221239881511322128 6956630690787969680145398389059931853137391604891793061784290591272136 0073083869662782393985044193354253035721702268862343415630127774276031 5461077277429386798888168047352236252395186136327780971513702373355126 8849796286616209733998343242574300429421250213273916223738350812399937 4492445439254953335273056188241158125653468257869880432433974322353676 025012519537086753024498887719603046891326651245183923499537655064305e -1);\n aFA := evalf(-.1565711812511167545605069814291800290911012 8569681904791667779075002039710251729815301866728143401970206375968462 4125538085811820689075248402820418783017643557945842437476828696619139 7205514959262893923237709578410694828014337189550144574748865934524930 4621610753957212729277982754240872646341944175815722202655709813169973 5728337000660250547043818790377630911997105154809682427671121559085006 1673647958534645029394981043460862613223306340331452006668263889087391 771644814820702751488084467006956605732775);\n aFB := evalf(.1326 0471949176523317815271257436842544909687182595639582931678939981108996 9145156837185305336624677300636710397541688031159571658094031537274980 7585742084886574376835875523265521653442876043790967777258545407863830 2042786667208746151132038280010104657390484447639431203451516797080236 4284855378930300751841057881929964377963782523015185005482373645146718 3026170420746735196864484972434060019117519218598119478681272162953887 7936781872662061639836099687527363319380237284570972841424300095339902 18783549009);\n aFC := evalf(-.9402962152946515651634831658142934 8523837916416713877410346063713780822096169386852248983219486811283559 2739164352681827515819633810630483989127679172918325266439629862683421 8397532520045225060925072442475205270046970582584460511880380801958972 4235731620584349886402316769862235232689138561277749979478266402577900 8665394561679892149698685136387818618211785967395774445436278594953522 4493682542445321969488537943791241981015179589126872084464126595515182 521773756453508735675781591178104677926998263552901e-1);\n aFD := evalf(.36973166229866423084963973447002881901736224499756531517034359 4101655766349652614109037956531786322443201542620938554885844110345508 2800714877051872353905153133601707828664737429943848683095264025046267 5493443960353122295938083510420409836527669311906801587689098352519169 1606499277182996627028129283862403601745561981734220227453185946967640 6515479246144137028843211203845609985857964191777002268721096839946236 5716792429683563877238476434512191795312656357525751838067681468210603 14222333446650814427411);\n aFE := evalf(-.1197020013028860976492 7849343122430366706584511953979487261045110620425215921259125992767908 8603343598406305409874909083813958114525302828998405683771601674837917 4879527611423394991871136904238054790137322770366201185136858238063994 1078191083480235614724462620331884199951243696806650636789168483787000 7931439893668970545829268362455455898626060101872805344814680627874178 0622126816077955318998540942034083026200607078152643075950413187508986 788153577842669730278443780529179601515697593361258101844151031e-1);\n aG1 := evalf(.55680666415362164610908230689178034360663658043619 0353212534947455147612081355812582955987993706817312077965247902861293 9225623866128719905259838291761370516313245223710802401597361012751374 6549047800030200526010631942115980795992394757749523348606797944886560 1467895545825063717704643179283304292555219953105507513810029176314699 1713070477344211765600176564998729322340455547616461773804113674611283 1948559830297850242189486177080151000454522952881867843418741131884448 84244512819508432774574709448086047e-1);\n aG8 := evalf(-.4324853 3195083584328960366544216851367365308101189241139407448700780367055056 1066808766373602362775080153243665191474554711635075218064904625432478 4878469107505913317886317676779733590562175815061867287953721395574138 2693666571163554545329104008113009992497476965857900324906542083095931 5530897883188410977104414631021466245987807253579829470257660931378703 6221115710825243067391944889036913549766751140649692404505491310199757 2916641895004302774761211350557816117265251291324224551302384138700366 79809236);\n aG9 := evalf(-.9979726994172038714656907882931844552 2380932858117911554991309276859874224321911702162338556815823606433912 3644956461824308010554471846092136424322608257317838128639962264631732 2935397899861533424596125826392883122071850758821432556298977239920328 9001029888210166606742305257291549088753590735868862110289022928928104 0081260287794333858204484522515814560440964691170246152327862322700444 4016570142497644751605858925298542806383329357600072405696764572437204 309054426007537192343822936043563566796542952167);\n aGA := evalf (.11292872140436383399474328051723200417194927787142923553813589392225 0489726220013688938418251501430161500906910942903270321533919623126337 2229742128584139107580871502053676219443958001730854116724245137193298 8154611005777411330852331729856078362208636946384689527584071186338529 7943701328254669149994700596178058803731776086768012249110505989353682 4419017685946237566372548917185390416469047846835200162000114679285896 5315097453539535053030755700633526959252125195090351365193704730217079 43116207933946161);\n aGB := evalf(-1.024823023512132929313567156 5769699548552322727490383476718181959355850952951278391498078797487465 3020737914581708483678733907332635898586144894479179618851383281863698 9531711256231928384731690411157859248042848859678823149641038352183277 3109752441986813906806629082970638956328824075351551601219583273067578 5322814662840039695537422224274128467841776527992213091504350374601560 0778601111906698618560532010073350580576484767638698095880759742692508 803319119344323585113197059695136141743209648277996179689);\n aGC := evalf(1.3345652066422469592522396023135892651889815605526945800598 0840620055939779905565216079292840811462370444432733940176870405122920 1688670646380373093845199077299171943530534301931262799038380970688512 1512741820327447254957039056813749186101991289041609984294528724938492 1330515698078304884531472609166981766411932542166820728689325017463795 2556351074776245098086615270856216021248162846832143975674451148677511 6697207882059369333365857893364487388172167825375924683072344323414074 68070959686416205151401706);\n aGD := evalf(.72160354838713421257 5307672858501071402062877936404208407362462928870487068293744756489763 5468748885414525364687451900678620331178203716793629133837329113798044 7419967428354730704376879452693616815190940178033472499402066208899765 5442093551264634425332532127206311411991225321489014673612084574506102 2011087855751503045743240780851396607254995564622123070056910095657971 1841744948492505459722310968453010583718316088293455241446845689984960 04053133786640714655365921741502345685860721304129098667086206316e-2); \n aGE := evalf(.899277369634835584643043830611118122341463259828 5854300924423251352733205187087732677678658583968989691346607371178742 6581468443898861329098512740895589187342517669174219757845524815942952 8819858728505393483168331531025541878581904558664106770502412208608841 6999978967764457705161607381060505328127407421581005130408615705986147 4783481561254989858535753611174576332047936128952503099103075969372837 4230504396700636375843399980109424682473473128602046083527305799886753 1167657818222203556936169177784618509e-1);\n aGF := evalf(1.49757 8446211167333777988534023066333042434967475357134513165331964695787890 0427601886668732415038756244901654565013992370532985049368378343270071 0360462256820205544444437024831972822948598453099238365834890346444895 2914352352169391404109134634860952720522440319770229132957172927115049 1023598440591035606867759990664420628825921903309466300673483171332559 0735277888030250343210819257686809014059419321225656957692661725412278 9024886448932485344033282155210931550663256144471709831964793227998240 144226577);\n aH1 := evalf(-.843489119968637763912518839198567131 8383858641413517143104162188088468627447515172982433165062309354229170 5939052711604635362529651715229651696943672938140186047624962044212579 9015921728241814315740668115521225998080708642460503078348766526689578 2650486948028136745931219571895076599297219131990767854793221670308674 2492134930637178123721016267129853381000307707958984039120269664582986 4000717888610014704796891305864196956938672594634306744457867589950933 9560704387467290308543958894448037010924471858111e-3);\n aH8 := e valf(.7602144218856081893754106886111596435015500427480120290148318740 8992114217734232347278742513429299067701211849635212723492746456577880 0436749004719517428620021857078121817972510521812919090302725924590713 1518204297776342604568938461159414365439030125400398957206584687873317 1305865185574754563336533708484291573835278742954149995854710229450095 0789678703490244346726415716425166061592060737813980016653364167828979 0635933147462506595984606452748323310394903856923917652736447485952366 196293611810754032903);\n aH9 := evalf(1.769083927820959377467464 8715223490664470684287020735906984451126849891844324094920246008694092 6936483902260554307637428309306700968184333584169633089575548091287798 5531970242356495427428907640811815007497815714707929117852298956038931 6831650789631915738072108470078517199088662027195244870363287249370668 7965678901744395034810426945165674652169613461787087143838077195559276 1116863863136253384757915313027945921669828698882356263586152060280513 556962017835039593452478549685415974228384827100363865643322);\n \+ aHA := evalf(-.3420660144261856568640856557101550842129621862743150134 8044238431806233777134663747539980835153989233436358445166633386159417 8017424207244808629814365260563718896631526756924926911103200902901126 2304973320573724937197069038665476657390014630588409427214271215346589 6881645148250931696994101525362191795248651231263701204210998582645232 0367531132384147495996424449484667892134997698756264401315569135554837 7809931940082145327184671521849751930391102710703252967716636612170435 409676546813324956731318622105e-1);\n aHB := evalf(1.490558190212 0434688172215632782399422096911003267191404785886017208678380402114504 4841146204332422713671066598000386030678123179866828413164414348846323 4641429697277302870724017272614888244747164359289827167348321178793778 6044573293217240848953173038438317272045970663092255663364966316680615 3360504883149027195467380832616128809242230828317876437201745528200408 5429830488419089438220781997253044038484825512735778350981549720975053 3856819575385339114261387318604528284312911481045147178243029794478131 20);\n aHC := evalf(-2.552203480132132516997563217309689292804518 1217433658184824976116671262187190697371952270027016235729041483603272 1230330458190213324226305821473448430853557658747240864969125214025343 9209820804901953714874297342786948528882952009523706897585959502475519 3150886163590227943089339907936616478532394409622401606215774297244713 2297530566589946497833430953238598236313460841121200777317534951794607 6573095581426801663256352546840141882560443188143040038234795764914537 354327113971030048609767760667673921155167);\n aHD := evalf(.3301 3435534889745845090656584325875942725776822035211833313194709822747578 4156623494751716557969741612223964962673863325766957181397914428771750 3362363099833663457884224012633901213452241746135505929824069849259260 1914182829922736104610240054580893886484048034149907638804616336320809 9014055069708514390871691161317892026066929899583735064041836426511250 7151803064741337161073026460203163844428020710627743750670618134166119 5605993936490990789116197432057582239074187043302853387581826831652980 67032063926);\n aHE := evalf(-.9161854401769482236671414092387917 4706862517141922366939200611389842023812091092485531738974081964369893 7800562340687590999618462486486787935824560376159122564571061068054562 6463309705882771561755593801222293412191735915622551273382374804221675 1729081040792045569477682250906363527918697880069416502491054603315319 2117919037436639062395400738591374792147588078720895455444727997932142 9004855468637202237881049738054843549303803226548973045643810068336241 874331740010535911884105899703979215643744473812966e-1);\n aHF := evalf(-1.525735678746850818217653470352135651821164556169070505816135 2307848070583895777531835937359309309754648282829212287674344339474899 7336731485926941311940150709990300033691431416504480257430466714366492 2313521374884461347699863456618521060972551215666486037002403269396882 9373568864112730894276288435272946902521289793166020072011350076865527 9361886210535194592206333604259112732902637766735367163471914508855889 5610873794216273051263024139407561461883189207208214590464628062743210 650203910550672562102267);\n aHG := evalf(.7371445601564892133467 4971072057985848298030381682678543898175081691239964591136575038786397 8307345190533974191463047618678373993639417529528724470673939571767654 4408270573648482469036585880890819726951229392491785480530386922083980 2483184059750818024390374887706088642732128037443196847562937348262619 4884066957534452371769125236348233622417138288568595639047182109481931 0583797860788385606085416044489548390047464364347899033242752043104443 146116628810612437521432075343494701535671995113908158957623988);\n \+ aI1 := evalf(.10173669741115766387668096563698289719440800182203328 0925939874067473880702337108269969547284838498441467590783795865933245 5485443826466724145306392257625436771914376138601195984821185349289409 2341694955368471242580280452044126123262257749696944874773852003978009 8876665404873459544863889020924368160652176177730612258421157535372089 6836725360831814517191749455944180491584412504611704562531875988606447 7986832456710395201965557302385260050618148176127169726005015088142982 79178843422669902098758021018445);\n aI8 := evalf(-1.696217553209 4328107116668387097421661829920929061772461740965172335618456629478628 2425070223934808006398831940261047601475862502213008479568847330190059 4489104727834661264984606119382048642135776385995715496360165534821793 5353361106914998179843398797960525819976276980613214177585226165889488 5915943515378642431363391706267794311351372485187359635494240458017574 3035575192664873580898984204353855364366852044223249916450393696457438 3155422384603908817542355409553944847004134934422484619212453835208223 08);\n aI9 := evalf(-3.825235846211624254528740857512255693551264 7191328757402612311655485834821011166764179620945366273985998462114374 4293820094118852314713919734211063517617052099006390658045733678643664 0696528610219837719517712348940257067384725449647972932370445598618432 0719122989115630318117988459232243429059992522521191383888797050493440 9094162096384106457725657033626507921261100048755122854525464606940708 4862645117180095336812736884083474183787367785563478487782669509504115 691854909695098490814263693142901771805864);\n aIA := evalf(-.342 0660144261856568640856557101550842129621862743150134804423843180623377 7134663747539980835153989233436358445166633386159417801742420724480862 9814365260563718896631526756924926911103200902901126230497332057372493 7197069038665476657390014630588409427214271215346589688164514825093169 6994101525362191795248651231263701204210998582645232036753113238414749 5996424449484667892134997698756264401315569135554837780993194008214532 7184671521849751930391102710703252967716636612170435409676546813324956 731318622105e-1);\n aIB := evalf(-2.52076778922715229119633631459 1227486393143379933686189126240710041836742414125694940524140112897641 0803095960574280339651024409634779187900213462658993802181988152466487 5352153843520905832279722994090990746697372621934481214191837990161048 7357103723522098480219961530523478854419934172424377410019231095476588 9310594669464293788647706991319829076112143518524569403515534585996276 0517230555154179738598479028297599341202333255217760538678524592494371 6060361503221374803742323117973804530727714050056257633);\n aIC : = evalf(5.472417145227780046950992000565734793413395536531652419585004 3007903709841859454959777562123450683156635073216242471126430804777369 3335354823269193576880125182393070860759971306054100785638361528667587 9256181854203404177348150112327382112423373716686748178537383768955229 8562698339685983863114757428961991704524389779184334273491999091802006 3297643511293324575485547988112412264943695955885612238192310029165917 7519620825143761124803230141853194056634545307571994047870862976491355 760885982251065098804405);\n aID := evalf(.7877467869749093540456 2077966057634625288690366416545877541774008326439639617696342777583150 4579288487931683456563373796076710178399485323226931264270726866848024 7925445061289545416303907094386060790396228547893500222853805807285718 3692997764430161725603930969181267153381467482148104068924779776922380 7273021674243919143385780919928612755074069756974200392597147372313558 6445293733349659028154950807754809398520374099878414005341164169816395 264884564471746160800616524084827794365457823506042812189983331e-2);\n aIE := evalf(.31891526924553343690245602134867530195404647856411 6324204778211183939947114717668156072795212980478707687423493514339156 3861473379485203444764411030583151405111948100431681527352987417181897 8615686152317512567408770932521034260140960823847283174274314469959614 5575090005481090669912018114559361094040261479895654938020843045684869 7273904392294767318828377088199450605579447074797163285367028958813070 9835991203190359559385017574334141689481419432283115563225559471202351 42058052229559391213450294793407647);\n aIF := evalf(3.4472270365 2775671815647501032432215527703592405139288057052522365541046076202713 8914944091250202130888572364696598938601612560725310296885963440793888 8795619382051461015261441567919070559191707335770125132422887186539259 5026563108939065540185585174997139381429069652994066272015452108318111 7931580600286784673448925249007741035854130733301595619025669472415434 9667980773222364680536216085159892503811287692920219968967845738037877 0579528840407138211435631034368082260331377092772648473790292858593799 5578);\n aIG := evalf(-.60519836122192778322417076712956071278148 2049971529361376140273265278012081004165359056315674879420917189412070 7465740597133761333454142943333892158117953969270887740211963859193981 4995648926780275250607461867678854947454445165251388118345188338326024 5849262663684308081571882630386539839628294454581820037452811694614076 6318827380847958297315439604519428093455594733440875645687632871656056 1246716693349020339977744295836553604172789125436501954442492554902210 73195587050434461403047677343483328497966962);\n aIH := evalf(.33 3452535030778745920263137841480656028763650565863478411751117423038399 3073398823363128289907713133086558799806727655543895469974841654975468 0861564000091497358307477274873050242130061074449365494802605403701954 0862223342235598074299173179169106632492862568636593418023086001039536 8762120599174843023460035766771608627372356818149220191733735216636730 0937195196557913839417682201206664122150127205317784086308064531788216 2720473058720769538150769606623268922596413072534313540160028204389459 6363814361475);\n\n # weights\n b1 := evalf(1/30);\n bC := evalf((14+SQRT7)/120);\n bD := evalf((14-SQRT7)/60);\n b E := evalf((14-SQRT7)/120);\n bF := evalf((14+SQRT7)/60);\n \+ bG := bC;\n bH := bE;\n bI := b1;\n \n for k from 1 to \+ stps do\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f 4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64 *f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a 71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t* h);\n t := a81*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c 8*h,yk + t*h);\n t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n \+ f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA6*f6 + aA 7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n \+ t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9;\n fB := f n(xk + cB*h,yk + t*h);\n t := aC1*f1 + aC8*f8 + aC9*f9 + aCA*f A + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h); \n t := a D1*f1 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn (xk + cD*h,yk + t*h);\n t := aE1*f1 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC + aED*fD;\n fE := fn(xk + cE*h,yk + t*h);\n t := aF1*f1 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + aFC*fC + aF D*fD + aFE*fE;\n fF := fn(xk + cF*h,yk + t*h); \n t \+ := aG1*f1 + aG8*f8 + aG9*f9 + aGA*fA + aGB*fB + aGC*fC + aGD*fD + aGE* fE\n \+ + aGF*fF;\n fG := fn(xk + cG*h,yk + t*h); \n \+ t := aH1*f1 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + aHC*fC + aHD*fD + aH E*fE\n + aHF*fF + aHG*fG;\n fH := fn(xk + cH*h,yk + t*h); \n \+ t := aI1*f1 + aI8*f8 + aI9*f9 + aIA*fA + aIB*fB + aIC*fC + aID*fD + aI E*fE\n + aIF*fF + aIG*fG + aIH*fH;\n fI := fn(xk + h,yk + t*h); \n t : = b1*f1 + bC*fC + bD*fD + bE*fE + bF*fF + bG*fG + bH*fH + bI*fI;\n\n \+ yk := yk + t*h;\n xk := xk + h:\n soln := soln, [xk,yk];\n if prntflg then print('step',k,` `,[xk,yk]) end i f;\n end do;\n Digits := saveDigits;\n if outpt='rkstep ' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_= c3,\n c4_=c4,c5_=c5,c6_=c6,c7_=c7,c8_=c8,c9_=c9,cA_=cA,cB_=cB, cC_=cC,\n cD_=cD,cE_=cE,cF_=cF,cG_=cG,cH_=cH,a31_=a31,a32_=a32 ,a41_=a41,\n a43_=a43,a51_=a51,a53_=a53,a54_=a54,a61_=a61,a64_ =a64,a65_=a65,a71_=a71,\n a74_=a74,a75_=a75,a76_=a76,a81_=a81, a86_=a86,a87_=a87,a91_=a91,a96_=a96,\n a97_=a97,a98_=a98,aA1_= aA1,aA6_=aA6,aA7_=aA7,aA8_=aA8,aA9_=aA9,aB1_=aB1,\n aB6_=aB6,a B7_=aB7,aB8_=aB8,aB9_=aB9,aC1_=aC1,aC8_=aC8,aC9_=aC9,aCA_=aCA,\n \+ aCB_=aCB,aD1_=aD1,aD8_=aD8,aD9_=aD9,aDA_=aDA,aDB_=aDB,aDC_=aDC,aE1_ =aE1,\n aE8_=aE8,aE9_=aE9,aEA_=aEA,aEB_=aEB,aEC_=aEC,aED_=aED, aF1_=aF1,aF8_=aF8,\n aF9_=aF9,aFA_=aFA,aFB_=aFB,aFC_=aFC,aFD_= aFD,aFE_=aFE,aG1_=aG1,aG8_=aG8,\n aG9_=aG9,aGA_=aGA,aGB_=aGB,a GC_=aGC,aGD_=aGD,aGE_=aGE,aGF_=aGF,aH1_=aH1,\n aH8_=aH8,aH9_=a H9,aHA_=aHA,aHB_=aHB,aHC_=aHC,aHD_=aHD,aHE_=aHE,aHF_=aHF,\n aH G_=aHG,aI1_=aI1,aI8_=aI8,aI9_=aI9,aIA_=aIA,aIB_=aIB,aIC_=aIC,aID_=aID, \n aIE_=aIE,aIF_=aIF,aIG_=aIG,aIH_=aIH,b1_=b1,bC_=bC,bD_=bD,bE _=bE,bF_=bF,\n bG_=bG,bH_=bH,bI_=bI\};\n return subs(e qns,eval(rk10step)); \n else\n return evalf([soln]);\n \+ end if;\nelif mthd='rk10b' then\n if prntflg then\n pr int(`method: modified Curtis Runge-Kutta order 10`);\n print(` 18 evaluations of the slope field are required per step.`);\n end if;\n SQRT7 := evalf[Digits+3](sqrt(7));\n \n # nodes\n \+ c2 := evalf(.14525189603161505176175485287700333203145112513299470 6083846874198397645560717967340061510556541732559356766259783846610433 3028669369682574502298151863694411535301626927979705964491845630701618 0392660267268391223810241183498117829183716273760095703872043669863242 2242168097891507517094661743431492244598369151591767554382698510450270 0379398273843376174849487132298887350598398607215265766952639925939415 5415325495501740532090647250152538344680405238044159514571025211002981 13257526671516447795421971380010);\n c3 := c2;\n c4 := evalf (.21787784404742257764263227931550499804717668769949205912577031129759 6468341076951010092265834812598839035149389675769915649954300405452386 1753447227795541617302952440391969558946737768446052427058899040090258 6835715361775247176743775574410640143555808065504794863336325214683726 1275641992615147238366897553727387651331574047765675405056909741076506 4262274230698448331025897597910822898650428959888909123312298824325261 0798135970875228807517020607857066239271856537816504471698862900072746 71693132957070015);\n c5 := evalf(.544694610118556444106580698288 7624951179417192487301478144257782439911708526923775252306645870314970 9758787347418942478912488575101363096543836180694888540432573811009799 2389736684442111513106764724760022564670892884044381179418594389360266 0035888952016376198715834081303670931531891049815378680959172438843184 6912832893511941418851264227435269126606556855767461208275647439947770 5724662607239972227280828074706081315269953399271880720187925515196426 6559817964134454126117924715725018186679232832392675037);\n c6 := evalf(.65363353214226773292789683794651499414153006309847617737731093 3892789405023230853030276797504437796517105448169027309746949862901216 3571585260341683386624851908857321175908676840213305338157281176697120 2707760507146085325741530231326723231920430667424196514384590008975644 0511783826925977845441715100692661182162953994722143297026215170729223 2295192786822692095344993077692793732468695951286879666727369936896472 9757832394407912625686422551061823571198717815569613449513415096588700 21824015079398871210042);\n c7 := evalf(.274659491990525400880802 1630247618520892150865127407293922085868737635475402543533498350740542 0257457181957440349833017002879800807354331158415780087269065160969322 1442066033072660562659647090009723279518425973372467552923174280649368 0604713020597042477668773207101439689234270846197217356020488675108782 2039608733264973211447020887964362884182912746198889165630647709063895 7802859931928546375769121998092390623519621159589642044656506443562345 4658500449838723780364652662075223497051170650669675007842454);\n \+ c8 := evalf(.77357752011066094484058250080939737185895429134268075564 1266267305460793802904338650093226298866975907437518810438033264148884 0910749170584251599743427942806671491279663807506305682443278856817728 2749295458631536994033848382465246886274399208863864874144335097217519 4771136615723705539761206242152176309067981875238870378548139362579011 9650542155389505593007215341469986735309800890012697292197798289459050 6689234766623627810097576114222422746975130169346835672847580033363207 35305894162221457561565877089);\n c9 := evalf(.580183140082995708 6304368756070480288942157185070105667309497004790955953521782539875699 1972415023193057813910782852494811166306830618779381886998075709571050 0361845974785562972926183245914261329620619715939736527455253862868489 3516470579940664789865560825132291313960783524617927791548209046816141 3223180098640642915278391110452193425897379066165421291947554115061024 9005148235066750952296914834871709428800169260749677208575731820856668 1706023134762701012675463568502502240551479420621666093171174407780); \n cA := evalf(.1174723380352676535744985130203309248171321557319 4788033620882208147234148058674293825136463513306345222636963566302723 1074488347336957066109646958552140136219150084289589590065763360965766 3262554488000333038517052445463797183511722636725858985429165571612270 3065411920243071334566413096665643737579703766484781912643739047932053 7243802821148702207436360098824290550238532441549665687797718932043342 9514458133942229883370509988779630647665975552728543592731064133995517 475866825660531789327429053458004470);\n cB := evalf(.35738424175 9677451842924502979560464040498263636787304090124791736151034542900200 9091621359974684913479003254571971764982803123160619097953357069249335 2517985852920715208532113654313477507261400988170762007225179847638245 5028189794313565335746925826431067705444483331079932219374610897866014 9097737781234559050909598776959262437975029768133429779793459378458022 2615610713643652423875902119773130727393311605259015456370098254753062 3282671486810209818206167444142792490871205748420332606497429357690019 6793);\n cC := 1-cB;\n cD := cA;\n cE := 1-cA;\n c F := cB;\n cG := cC;\n cH := cE;\n\n # linking coeffici ents\n a21 := c2;\n a31 := evalf(.72625948015807525880877426 4385016660157255625664973530419234370991988227803589836700307552782708 6627967838312989192330521665143346848412872511490759318472057676508134 6398985298224592281535080901963301336341956119051205917490589145918581 3688004785193602183493162111210840489457537585473308717157461222991845 7579588377719134925522513501896991369216880874247435661494436752991993 0360763288347631996296970777076627477508702660453236250762691723402026 19022079757285512605501490566287633357582238977109856900048e-1);\n \+ a32 := a31;\n a41 := evalf(.54469461011855644410658069828876249 5117941719248730147814425778243991170852692377525230664587031497097587 8734741894247891248857510136309654383618069488854043257381100979923897 3668444211151310676472476002256467089288404438117941859438936026600358 8895201637619871583408130367093153189104981537868095917243884318469128 3289351194141885126422743526912660655685576746120827564743994777057246 6260723997222728082807470608131526995339927188072018792551519642665598 17964134454126117924715725018186679232832392675035e-1);\n a43 := \+ evalf(.163408383035566933231974209486628748535382515774619044344327733 4731973512558077132575691993761094491292763620422568274367374657253040 8928963150854208466562129772143302939771692100533263345393202941742800 6769401267865213314353825578316808079801076668560491285961475022439110 1279459567314944613604287751731652955407384986805358242565537926823058 0737981967056730238362482694231984331171739878217199166818424842241182 4394580986019781564216056377654558927996794538924033623783537741471750 5456003769849717802511);\n a51 := c5;\n a53 := evalf(-2.0426 0478794458666539967761858285935669228144718273805430409666841496689069 7596415719614992201368114115954525528210342959218321566301116120393856 7760583202662215179128674714615125666579181741503677178500846175158483 1516642942281972896010099751345835700614107451843778048887659932445914 3680767005359689664566194259231233506697803206922408528822592247745882 0912797953103367789980413964674847771498958523031052801478049322623252 4726955270070472068198659995993173655042029729422176839688182000471231 2147253139);\n a54 := -a53;\n a61 := evalf(.6536335321422677 3292789683794651499414153006309847617737731093389278940502323085303027 6797504437796517105448169027309746949862901216357158526034168338662485 1908857321175908676840213305338157281176697120270776050714608532574153 0231326723231920430667424196514384590008975644051178382692597784544171 5100692661182162953994722143297026215170729223229519278682269209534499 3077692793732468695951286879666727369936896472975783239440791262568642 255106182357119871781556961344951341509658870021824015079398871210027e -1);\n a64 := evalf(.32681676607113386646394841897325749707076503 1549238088688655466946394702511615426515138398752218898258552724084513 6548734749314506081785792630170841693312425954428660587954338420106652 6690786405883485601353880253573042662870765115663361615960215333712098 2571922950044878220255891913462988922720857550346330591081476997361071 6485131075853646116147596393411346047672496538846396866234347975643439 8333636849684482364878916197203956312843211275530911785599358907784806 72475670754829435010912007539699435605026);\n a65 := evalf(.26145 3412856907093171158735178605997656612025239390470950924373557115762009 2923412121107190017751186068421792676109238987799451604865428634104136 6733546499407635429284703634707360853221352629124706788481083104202858 4341302966120925306892927681722669696786057538360035902576204713530770 3911381766860402770644728651815978888573188104860682916892918077114729 0768381379972310771174929874783805147518666909479747585891903132957763 1650502745690204247294284794871262278453798053660386354800872960603175 9548484014);\n a71 := evalf(.823370775748271658517345434431012529 6066814318521742241762319051772963627695955263033842719520815607490571 2853924874016229475401856663214526844249824085302650124958756494369645 7716281549978439184415425151675778344124653763706573440927302209462992 3337391512886057098193714900885546230075115760936994967282141632313775 9150546136523605072945590458149745457118239891471381462612725883990222 3761473677738043314533241673867446118588292827076949765690032278685507 7263133895921073529784408262111797856608687097657e-1);\n a74 := e valf(.2119171963202803561687843468555305553175658807629274312902985594 8400865702245671526636961358564994228466454747847371095092604708353813 5136754606460454066287755040199667872826740533185847635831413958836520 9457714912425806902084117890684320046094144978194515994622421767783398 7269092924546960106463208862359484966723344794819522498223917465086329 2918710084873256137219009602895013317969327119253443591929193202829788 8329240001619237170581187252931441388030377113368256802530345437489597 300716880144897526715);\n a75 := evalf(-.399734350805421831157793 2550061320162379840049816347807630118786107674477850206579628280273062 1495009143101098758151068300567261019952306403367557839247075211517086 3186434011590838711022362208368113359377780738509846822624299578395117 5751762747665899004224504439867499234823354809734061725850688477656105 3300728496721886702556493252768798546621921385808734810429751421412917 0156990464858591359268851272021998187140079748547041989695014327783610 0682656988230775422050751299511803862038074626035682075572547e-1);\n \+ a76 := evalf(.2037865317596006197606259822674324543477946306275935 3760588024733101999019340151249409836003965971221392415169857896271173 8427836986972667060746484337861364160451493363422378454396197592496355 1413423642009069789779718911902516935571865576337382263204444239404229 5660245782779086325516132101881750249142857430825458164520075665196288 1648309346999803922556349707075381209863670793570188649101108846413917 6993428827740946583232549062624206263884432530994327769616409233331543 279879528314662166074374491632281e-1);\n a81 := evalf(.8595305779 0073438315620277867710819095439365704742306182362918589495643755878259 8500103584776518862119375020900486703626832093434527685620472399971491 9936451857212532959786118117424936976507575253638810606514615221559316 4869405829873638221343182072082382594552463910530126290635967282195689 5824613529232297757639154300420609043736198902183393572821056177000801 7046077763039233112100014108102441998099398945187692751847069756677508 4571358247496639033521496484080941755592625785947843268469127306239620 85596e-1);\n a86 := evalf(.29117694780588509603371796217615533998 5602604959839301398187459494228983706432969999980083431408208466460303 6705378787317160228053190167694470327153376347034102339859467907732508 9689082987021438404188124250341353955774761305525919950855679538630509 8052558396748023705205572234113423683749113414172135329802327211825422 2529618359920718487760822346295590411645494001733581423579952635925550 7655431915303999929375440757983218548417233823574105272644920881623673 03073645182221776655223040370242257565714922103);\n a87 := evalf( .396447514514702410491244260765531212777912320678099148060715889221736 1663405931088001027843898068812290397130498514841697496519423031317269 3088726185596021273834301668999211619849710412825039163624922360601775 5678166997705899987439480548975359151478606502359671687579035438090974 3145738164032455186880560358788994980180835253989968872729706326236272 8590043609196351286290078065370440857357164104069491191632126101256793 3395050028338335124927246663059355735142340169526518828622060442110728 7926933454746426);\n a91 := evalf(.861209348560696754998304737229 2119178898514571588438099912534616486575243508895957627990995905355005 2195192523818296671985324986701699750644988512768631394527397461511882 2320037937303255653981661155607390848046407941392452695413881351101709 9424297456691849805744919160538044354736565579372803867709775315795891 9704327366361804577474616566422051339297230234650639543708836701691142 7208444815732958012693683375251246425302106479601921584116815737809066 3384315690141234495901763318602264985285607050962011565e-1);\n a9 6 := evalf(.1397464826824442089036313891001189801074425314582326737716 2885635211835954550902684802793703073023232432544454080816974753021248 0572509630358944613419520403096347046012737029084278997632307960156581 4582914440846726622961015241938475900362164776395283266333440360932496 6043844506344265196473929608344914787890076928241805902939070544161463 4763290200792713649608944746457637176782390637650891841888578556571724 1373903111581446942893235555787152052601156537409868526724736461574863 373644197280932248106893204);\n a97 := evalf(.3951098495815674599 9005260560012842152941258404041769243346539877704789241978030104676308 2714970762736676277449221251689010226910522257242067826150090927205021 1740307452684117813873275475192495066625505091878599385855160533076947 7345959537180239578740475522284701225609929273065177563138578220727957 9003312633574144457163638658775716530356699976011684821491905553472365 6644442468115233832568764748188005579510186469424505319614634487966622 545687476202827586191666252476782678145021446688317497394069513963);\n a98 := evalf(-.4079412703708563576307759281612056453162454270752 4180473269900814936409048200033483501009980604313182618775406019193160 4141013094902788292528892955219832921445566922951021098965338722594783 4649973894982377701272458669753723294065753768376520779930374222455171 1423301286759157469804784323344860425993672548506856702049805118749536 6985025840946558975618459006239871522831331744852781309263333768243269 1706921251190114646167872798114365398448074547516630024149537435321603 321887887758967624608971760982005432e-1);\n aA1 := evalf(.7233144 4223379480776163482291193263155829308710890207330929008912061293819377 9520477840985080910888115432823874965865729265175964020133852859744028 8106986927373040715464544034379232521637329531428866438882267686680062 0941143435356157851686877059112936322655150551712848032005878769930464 9636107665450002725833801948187271083957790350787333827696684912796881 9477003092163232487326585903582586945038971534488152724660741307625981 0073823935882515972679163536877810141022717843338084278232631847622292 45322729e-1);\n aA6 := evalf(.22002762846899981021409727357350700 6137324280018118745995121934736111485734282843015748309468462966473032 7242711593902148497634169001562383096987031987683906389040891376696938 0763235481898924699224682066826488181715134094006500947878059718890454 9441299807829131912525332608599686260537721477518279683224957629331520 3500924031435850700575296146331572437689880768350710018431010104060553 5055962202320412517896675109243552869826992902123267096921429435283598 30746504440557871235891532354100391199867710878604);\n aA7 := eva lf(.878953342543673401336978026479257363795222648775329641682384687621 7040795688489371334397240069873295510667161495932244335938040844251746 4376695256593340769913451266807476590434697125078511223809049842074795 6107825935088281777773083209809558418593309353872764945614847670207544 3700744097831266500079586447782132790156507726791257845471770982871356 0736212576775395736171850626214169241568077608375726488026921062096939 7688677674298463081098063906847157200700924015562251000352096976408404 8763725214493683430e-1);\n aA8 := evalf(-.44453839962603508639906 7488061110898683286064819603000058000469000226810898423864172992123357 0494518449416022161984810706424383620065382420106046299214577465036908 8113741901876477181968591730630927843738972800911422667499959046103678 8063499171360779426773244331677915447950593671963511022211017401356876 0373956455657341454923049428198263839412281043893180090973559023981823 1966346059338792953794909055450267288372377567615086021814535164121628 86400092865766596879102523827151659356567777137230061823406338e-1);\n \+ aA9 := evalf(-.21832822894887546890955329668618399098721509139263 3737152280543428848164940116559421325803406414779602962148416332423892 9969292382070761976616609411288931189565665906964602326438812621795157 0922920868335960651684987825682970882486731695089580778889067167920931 3203812200435587289177427095876254931091364439446655933723091750900911 0340685132832913685959693533129746976169753785818294088179512140110683 2165468865784061680597621226916376478593893681489243165927247995072661 91439377755356264544896552444434116);\n aB1 := evalf(.89471009367 3111422878544196677383616907103839088285721105726915852270497158536584 5223314484209822032966169036316821922056715994620093268751040004299961 8933734208374533225451741016415885479874752920639051432587430584708012 1516964342298263739526885709110399736104489623190770702561658308218614 3981386039745526586227968085097071441834965821048983273667110713830586 0710659180498723172050175468990319629662357085662770200599836294367109 3282950122674922318092030891279006846917911893661388956821680602693492 1461e-1);\n aB6 := evalf(.394600817028556186074139765475502230092 9434262701385530048127140223687993778661654316196030060803210459506570 4897842876777483253712864758580890429614632748314443251251427494309662 5720522534893823399056144974113581720721420876755126842572104678477711 2006119345292020804328022912076100247022707706603400532192673654692815 9780005171971636541529306347955588660770782772439430171974156326242274 6811554461155510317984115422510803764192359571986391663642636296109875 2359947472060627591257437601756055337717664162);\n aB7 := evalf(. 3443011367963333487713764986067104675654371857504670290688086760696354 5961955963540108811060009349637193508852404791707180248371733159535351 2014459360150722037322865809371861239262625844862535654977553590086734 4228379190640278481595169879514072999366217687102768183962888966446110 0714336662009863979216830260997768627782709125400083378205798329496023 8530359887994281164096439132937965114096630611708238123127880713750390 7474311638518341247584665422209388741041446501800736835907746380589010 425127474281955);\n aB8 := evalf(-.794668266429266129069493811311 9430997053815140863772328764150866582492425892231395780336631333316967 0111262806456115566514207754203657381298140047009197801357560910382682 8824737047294213201114995354340265899100022148437584642881627726719550 0161505274251503552577340196077746346564814010325961883222006893016971 3709053453683216005683298380896080582558682383612687560537077096138624 1174185514750121559562467770681942926171203171812510250545694949083146 3940244905147330525606668587805578609454933810023032516e-1);\n aB 9 := evalf(-.391521894789596612383496799639196285338054580884009126806 4277812752553499114569444179753561374703767295358476725412729953499561 3039560845019747182656337415769987363532210405246665689805648457872188 0107139831273634452122283563821763503149139289925339559837877446212706 0000663232345239609214777805079944265910684007663091262525603357135304 8952713261456090387648676899957336512493481040127256322616636916662770 1869250517183284625011446426680106092558956198617175314279815844265104 9681323221668374109982938218);\n aC1 := evalf(.321000687796320921 2945282736072241886741425314298532400216927262619488479186214523311859 7421495604144503211542322592608163842377484213636896150913832326203230 0174154508369399398406876586301096255619597993599340873977001200079874 1442010527997500486441780759998880623210257472360097358900794871524003 6211712882279462606287489127121883154035019756496688081222106147458744 8867942354347301494417332273681591968508596795230132852153759846225598 8794922602851688170400612606266276442383518568194345914720483213327e-1 );\n aC8 := evalf(-.184637599751205014183516388175322791099632320 4749769226655464078048769505209525299751763521178003829926563071290094 1826295484194193192561560084860159566711328544062687192109817305658900 4722218006788475609754668033954660609525255147766716552866309100695537 1444679719901425825011514868682897222025577800544887348735524152188820 6336288129188808797966378728545602867896725107562857398737123131298263 9399735279798619387192604265618690682001230229337407020225518358428637 7842605437238570271650603545445667948047e-3);\n aC9 := evalf(.156 0894025313219860759149162557283383430181475726228517203663063649626288 0793379098982552701969890344417664541893554194063231959686418903402325 4348635484864922437517664470890059511044294189910483029365381141899009 8086435922603008736311935392525041065439305206879607176423887619332381 6998720007560070817021926916504409685623361950682312911952371522433044 8811155619446567558679113687543872784091968142186029390121562901838427 4865493639406285454851537826280398862205756741128964048582471898149854 836925512958);\n aCA := evalf(.1934496857654560252749984220385188 7271385262876707443099700932787156065771400840229918101822979356069279 5659118323615495218608247616242166220092290507024205202394717762041721 8780533112999776957994003329902549012158469391496067804655626511416867 1498647949527636976285834587267524847922201741694891806599962050689668 7196148022364452136580040772876741149750157934485522239438544851923939 4903881580711660811258848014420955410888834999986869877126809862060410 735240727850822593729520910702178238602001466376907);\n aCB := ev alf(.26116123876366364969089284775364522882631633920100506611299584780 8935671093816413098687897683661240753616814770350082875967872303915377 2931403963706932352138999065825974370480842248785611343923001334226847 8076855650428934370626670722025141989171652522839443465345483281937420 2343849607989709072669969275045925302719775427547527185017041283228761 5381495692484575500953082306209032890148374195984086890402671014257803 0309882013266272014915359730376157162806295991614932787802101451902133 10853261658105259958);\n aD1 := evalf(.44237493285249963270353884 1779268815443317313329489228529575645756127631564847723373165022251362 1395199551724339014146626317346074332570313233050719360245189967273969 4732396741602240441380588639363498021901352727143095800795297014286698 5355630988473491087575633890947835892219998851264711343681119827177546 9385364555712603849395100515385777884625530268064447928281923786620357 9544163595788025198937952433352363854940344183547117623641892674507168 58130863478364272033888044693056215737306793777268420026189e-1);\n \+ aD8 := evalf(.464077443453903963640622216878198161653411564320811445 5689698789119941732444857047798151908923134674454347957682515697886003 0493014123004269658954045502281975365651289026042295526191605048773832 1870186750108563205532682998067676475153405503892387397712454726903251 6355857608843717280063979206240363181691839453402902938712446645491980 0734220748775955786699141318216793359239674338096414086238583028900047 4552060770724976026065335725578366042717756738119333671381487432341867 5306383333149393266793993467442e-2);\n aD9 := evalf(.470466028261 5136532130927218172390570903230981414159347904277946537920001824903276 5861391172608238992084946894204985030245397047723227142659764430629192 2394876737959258322212495460434588995542355396502115670570981097160260 5118912025215056422846994044948941299221190230282192466535350598222177 8162730517700991987897450456643545353453413490294538210263560740880308 0375539823048881237492347856681350488265044834974638813007229098355751 8219295953729629930520109725079191886177397428517964189944324843820503 168e-1);\n aDA := evalf(.8620749948011488160369445167416002799205 3173970136190443912707063395617002815265297027309347079951403728406653 9576848198715199093167509150446541762329500412365303530008939235499521 7560347748367087349222760471598080369484072219563915586298960738909039 5816758576304103774038945498233296550787181613213941419615571984857730 6904812641224644437065093367399294748646258375244179611984294202017589 3189257191884387722975422536437119164302398972503381846036461283306313 828198386850125158923344068113848485808994276e-1);\n aDB := evalf (-.2607983024682138093233254079066687623148682426317395111719299641390 1186528029496000350400559396265441070068158592387080451128945084852766 9060192456456705428353475654786670349178538588861481861459361241434133 0137209310780384456307697134233857564053061628887443002213453592314284 0870439024406103667258906389024628266051228032715734988166561936466438 1883910877235719019384988407885706714338936460658093071234107759965880 9012880858039198824692065450551860115703425508029179588224296106969058 601705596195735588e-1);\n aDC := evalf(-.385802017439662153249327 7639159499581333235076531298977820093139813399390137768850940158945921 8210128966780954979912702740476174662906228248048805262484281766915803 9821045207870358588123479915276104181518570583607741793139864442892112 3121996369830499808937494026136347795384482065463907705999308523441451 3268419538279633572930941841042482116800034276998343590486063818571111 2952947834421286709757093292172344414611778318581017912250165808100803 2443964743214007712927239067190621583091927915281146673090089e-1);\naE 1 := evalf(.2318046717429411567006043539613275607940758021709332569729 3529907773363901583116305293806861959355399891420815152206367417661476 4040021017370627223290356413613836990515675811452222909021568992077149 6852305370342887529751596792784329620107641231624663878011777387971363 3267722479349879743805862971764813862121578735103960752395025869773099 2057387507745925245513990380700638069777702783194496297410165702881280 3721175353924404490656981338111266915888608189214693616654119406747191 344341630726810243801292966e-1);\n aE8 := evalf(.3197856784116367067 3021243225821000588640278381971200891293306017373246598817658525926178 3754733097905355715295979227429836594923912559333687578955489591267403 8096636435465502822799184222016708104373772419571939053057592410278280 1901237857952211647315284795556435965707891647702087607539884952780715 6177154932732388377435659007259488083223758140920386315145136340855971 0715188082347143732724912319135381861370862287122754965479730348186998 347209912792729053710100593671998340813460184038328693248987401896);\n aE9 := evalf(.59332333318418986860639398867978283768660512057732804 2684816401812086967420444379794755524150780842691854488231498069420806 1750511126651660471926504453427418215878260011066697314659375915727040 7091865813339506939242835493135563257950724608596140509840507513668706 2931096977017151737920067105576340301368526835619568931734561154727050 2904698417162065771560860976442226752101373127601265134015357477803908 6471944338029994424672933296039287224568086583121660926688571704271096 05711090179594338667452540588727);\n aEA := evalf(-1.937519548878479 3147068157824082299520084422226247731687718654656598220205824504447831 9747592146255810972943690563739278129817310520786486322298272152412617 5805520996350492522696065992405434493093434563391383376166469782465223 7911203804181148449599268343309275258848640821331790474908231674267911 1623378559862386850863031173406624632396233596124793523142611932993484 1761697097003325109759202796334305883891451579260942300145021189061550 354867413280036288485166160632965065483342729868454914281090688744822) ;\n aEB := evalf(.18039505570305023573440631957378279044762401806627 6446823204253785889220351813407235938328295258745744722645503244751243 2186131148582641359359691360712561971696190949375660321254160014916947 4159162234771715841694957191981818278482651761704545355765925930968103 2094945392991304795501521609547591832439329529406766118314767461286016 1825003464444081431102017851965348846965224396782449647951851121480016 7255828854964662689313675556440459663690566247734863240067832348315200 69028362612833094442392231522709372);\n aEC := evalf(-.4554014298857 2207268635052569265490223164607123536586888731507028276637628617506749 2620459754498952035011009464509741340034114630304689474262376140729982 7980000151099283090704954898705217244187326421161650904095971154747749 2439547907813259517959889770995535315614780089347768647857534098270630 1846248851947949469332067006581320034856316659396470154019963660307593 8054891243891349565289434450821282710258603056096533887331873341010092 4483311752768912615045322931914264467226813405101278310221357397421719 69);\n aED := evalf(2.1587641062557628070775946191726455393229166354 4778133320472446818163403772602128074231712797809640495068980688860985 2428978754821888106533967908439366742989829985738355425169841408353553 7665698899345279076055503821593793538956621588614353367766204305311121 6259398129857102763073293663636416809663502391080842882190353202940222 2715345829034959011860966764139831319095599421141811605866903620177550 5217864086706782239500441572786351381088312886522029628758578259109499 54878399833585064970065508363574078643);\n aF1 := evalf(.26243643257 9810589152773398585855239172355303071914406584454488049818855383926394 4446686664322145159462563259692164636892226066613774140289571886297214 2046810540765960945228897042206093497093630687500827623093731484332932 2643343753178524991220706203957374269847275504235952344148488042428064 1023336207108658534451853279317796640325170406224467383894612572475094 9325230656019325165012040214053984492243387630302573829793810449476038 2095240091799880998963585832972728108371556919338116802933290885743747 5009e-1);\n aF8 := evalf(.486313942386726610652684391360922599625307 3727381961544415263239431571586043622332760373023254812655793208944400 3265848387845502684036184072697442170126559044841302343114753119035141 2244918734387828496161012121276901609498113221059623603447210600760647 5346793388340688800776846829278114116660302947109477757162234189425001 4833150468374361877240166545584913640315186724422831867875808386648525 0388035748651252576011321888448121214881562322336390955551970822311848 4786785518735680595161660521413344094696096e-1);\n aF9 := evalf(.427 4382538346478867636942429421724367591866585774144180215122660980822123 9881511322128695663069078796968014539838905993185313739160489179306178 4290591272136007308386966278239398504419335425303572170226886234341563 0127774276031546107727742938679888816804735223625239518613632778097151 3702373355126884979628661620973399834324257430042942125021327391622373 8350812399937449244543925495333527305618824115812565346825786988043243 3974322353676025012519537086753024498887719603046891326651245183923499 537655064305e-1);\n aFA := evalf(-.486225986946554777129897698186864 3277396586803130813159599600102115609499827986711663026959885641936053 6741252840598845975207649470957413077286031483947453005078547698613168 8297344267876001417112486917348353733251923495488996418513236830656960 4679486441003430415065820632737970093439951633417738931171456695817062 6897167424232932547699516051834886103524716479624162346061019375198702 4653048917286205179144455810119312846270023557924736205197233078479917 3225848095606727128546019311594515615566530713748136);\n aFB := eval f(.1326047194917652331781527125743684254490968718259563958293167893998 1108996914515683718530533662467730063671039754168803115957165809403153 7274980758574208488657437683587552326552165344287604379096777725854540 7863830204278666720874615113203828001010465739048444763943120345151679 7080236428485537893030075184105788192996437796378252301518500548237364 5146718302617042074673519686448497243406001911751921859811947868127216 2953887793678187266206163983609968752736331938023728457097284142430009 533990218783549009);\n aFC := evalf(-.940296215294651565163483165814 2934852383791641671387741034606371378082209616938685224898321948681128 3559273916435268182751581963381063048398912767917291832526643962986268 3421839753252004522506092507244247520527004697058258446051188038080195 8972423573162058434988640231676986223523268913856127774997947826640257 7900866539456167989214969868513638781861821178596739577444543627859495 3522449368254244532196948853794379124198101517958912687208446412659551 5182521773756453508735675781591178104677926998263552901e-1);\n aFD : = evalf(.6993864679941022534190304512277131176659196396138275832136258 1356319631922993398712232198523891649634650519546472041780751037501952 8778953857745083291847401806199805331521333343719513023759447588702151 7795172150143852356469435346624264715473505676152190700038249505351276 7262368107876943350538258064285085115689473282170872682844166228187761 1956590169483947587128839426185072322901699513141611345712492974985930 8369826662207729353747903355092097957662174972513279018889081872137620 420653482006224922442772);\n aFE := evalf(-.119702001302886097649278 4934312243036670658451195397948726104511062042521592125912599276790886 0334359840630540987490908381395811452530282899840568377160167483791748 7952761142339499187113690423805479013732277036620118513685823806399410 7819108348023561472446262033188419995124369680665063678916848378700079 3143989366897054582926836245545589862606010187280534481468062787417806 2212681607795531899854094203408302620060707815264307595041318750898678 8153577842669730278443780529179601515697593361258101844151031e-1);\n \+ aG1 := evalf(.5568066641536216461090823068917803436066365804361903532 1253494745514761208135581258295598799370681731207796524790286129392256 2386612871990525983829176137051631324522371080240159736101275137465490 4780003020052601063194211598079599239475774952334860679794488656014678 9554582506371770464317928330429255521995310550751381002917631469917130 7047734421176560017656499872932234045554761646177380411367461128319485 5983029785024218948617708015100045452295288186784341874113188444884244 512819508432774574709448086047e-1);\n aG8 := evalf(-.432485331950835 8432896036654421685136736530810118924113940744870078036705505610668087 6637360236277508015324366519147455471163507521806490462543247848784691 0750591331788631767677973359056217581506186728795372139557413826936665 7116355454532910400811300999249747696585790032490654208309593155308978 8318841097710441463102146624598780725357982947025766093137870362211157 1082524306739194488903691354976675114064969240450549131019975729166418 9500430277476121135055781611726525129132422455130238413870036679809236 );\n aG9 := evalf(-.997972699417203871465690788293184455223809328581 1791155499130927685987422432191170216233855681582360643391236449564618 2430801055447184609213642432260825731783812863996226463173229353978998 6153342459612582639288312207185075882143255629897723992032890010298882 1016660674230525729154908875359073586886211028902292892810400812602877 9433385820448452251581456044096469117024615232786232270044440165701424 9764475160585892529854280638332935760007240569676457243720430905442600 7537192343822936043563566796542952167);\n aGA := evalf(2.70789375571 8926115778725270396739994070337972517006747100005607751792006959604868 3230644010787469037347006832515690995989665797519069908107937405164935 0523050734037292355203707581624226080961872712395927702330066975089276 1293075279181238987792490890701776104916173248010311238766004431558501 1583409530204471117745087133295557992558334437725558302369445342708539 3258678722976232394356854324185115761504269795595829036973739390817746 8572552105567205987104955526000569297786028625625534476803820500061354 060);\n aGB := evalf(-1.02482302351213292931356715657696995485523227 2749038347671818195935585095295127839149807879748746530207379145817084 8367873390733263589858614489447917961885138328186369895317112562319283 8473169041115785924804284885967882314964103835218327731097524419868139 0680662908297063895632882407535155160121958327306757853228146628400396 9553742222427412846784177652799221309150435037460156007786011119066986 1856053201007335058057648476763869809588075974269250880331911934432358 5113197059695136141743209648277996179689);\n aGC := evalf(1.33456520 6642246959252239602313589265188981560552694580059808406200559397799055 6521607929284081146237044443273394017687040512292016886706463803730938 4519907729917194353053430193126279903838097068851215127418203274472549 5703905681374918610199128904160998429452872493849213305156980783048845 3147260916698176641193254216682072868932501746379525563510747762450980 8661527085621602124816284683214397567445114867751166972078820593693333 6585789336448738817216782537592468307234432341407468070959686416205151 401706);\n aGD := evalf(-2.58774899883069093965822891315092297918436 8065866213469477796089200252812362701917186561085191776724687785250975 9387444279664255011056607567771371697977622059512084807214415796583500 0439977893769301792646367561577639089478055887677930951949149622246007 8986936748834293178535600253170583494125643445897297839845859953478507 7257904627329366593114809898805094322023987344920036864309096776457910 9424299818119688611853017125489740949738865302330200614651804872229009 3252472530874342892371584705379780600873238);\n aGE := evalf(.899277 3696348355846430438306111181223414632598285854300924423251352733205187 0877326776786585839689896913466073711787426581468443898861329098512740 8955891873425176691742197578455248159429528819858728505393483168331531 0255418785819045586641067705024122086088416999978967764457705161607381 0605053281274074215810051304086157059861474783481561254989858535753611 1745763320479361289525030991030759693728374230504396700636375843399980 1094246824734731286020460835273057998867531167657818222203556936169177 784618509e-1);\n aGF := evalf(1.497578446211167333777988534023066333 0424349674753571345131653319646957878900427601886668732415038756244901 6545650139923705329850493683783432700710360462256820205544444437024831 9728229485984530992383658348903464448952914352352169391404109134634860 9527205224403197702291329571729271150491023598440591035606867759990664 4206288259219033094663006734831713325590735277888030250343210819257686 8090140594193212256569576926617254122789024886448932485344033282155210 931550663256144471709831964793227998240144226577);\n aH1 := evalf(-. 8434891199686377639125188391985671318383858641413517143104162188088468 6274475151729824331650623093542291705939052711604635362529651715229651 6969436729381401860476249620442125799015921728241814315740668115521225 9980807086424605030783487665266895782650486948028136745931219571895076 5992972191319907678547932216703086742492134930637178123721016267129853 3810003077079589840391202696645829864000717888610014704796891305864196 9569386725946343067444578675899509339560704387467290308543958894448037 010924471858111e-3);\n aH8 := evalf(.7602144218856081893754106886111 5964350155004274801202901483187408992114217734232347278742513429299067 7012118496352127234927464565778800436749004719517428620021857078121817 9725105218129190903027259245907131518204297776342604568938461159414365 4390301254003989572065846878733171305865185574754563336533708484291573 8352787429541499958547102294500950789678703490244346726415716425166061 5920607378139800166533641678289790635933147462506595984606452748323310 394903856923917652736447485952366196293611810754032903);\n aH9 := ev alf(1.7690839278209593774674648715223490664470684287020735906984451126 8498918443240949202460086940926936483902260554307637428309306700968184 3335841696330895755480912877985531970242356495427428907640811815007497 8157147079291178522989560389316831650789631915738072108470078517199088 6620271952448703632872493706687965678901744395034810426945165674652169 6134617870871438380771955592761116863863136253384757915313027945921669 8286988823562635861520602805135569620178350395934524785496854159742283 84827100363865643322);\n aHA := evalf(-4.499239797622297101452915424 2610165939956954564952688634556433960715390246092710335742331933027457 8488560417763577021916240057247548085189569349996691427458922350935424 0414105957169698535941248716900306421433590885832096840863887332609023 7722546872923256809817254324322896578600941095028014375007527506986017 2484965854933390740985824339817384062689079346393530188285774649059219 5390999800692774122182422235547913224550459406529842637327936914332852 339423376786738288921947569735491044501792123719014541124);\n aHB := evalf(1.4905581902120434688172215632782399422096911003267191404785886 0172086783804021145044841146204332422713671066598000386030678123179866 8284131644143488463234641429697277302870724017272614888244747164359289 8271673483211787937786044573293217240848953173038438317272045970663092 2556633649663166806153360504883149027195467380832616128809242230828317 8764372017455282004085429830488419089438220781997253044038484825512735 7783509815497209750533856819575385339114261387318604528284312911481045 14717824302979447813120);\n aHC := evalf(-2.552203480132132516997563 2173096892928045181217433658184824976116671262187190697371952270027016 2357290414836032721230330458190213324226305821473448430853557658747240 8649691252140253439209820804901953714874297342786948528882952009523706 8975859595024755193150886163590227943089339907936616478532394409622401 6062157742972447132297530566589946497833430953238598236313460841121200 7773175349517946076573095581426801663256352546840141882560443188143040 038234795764914537354327113971030048609767760667673921155167);\n aHD := evalf(4.7951675515285759942174134245332598450016570060881894804407 3110473796026661629299332144492902556153726439178415327744910200811185 5136345599984387321714058516217965479510139676854599933440025572154870 2390952127795624792679787764599270812260264946121369183787499134656117 9605887520638590482139104509907329422476477971274015576334117518190120 1129350078889965050839744383413417485998267144490637085367339929526144 8809669630545652140558614743493029201032866369200794518644262588939152 70097301975403958404561296);\n aHE := evalf(-.9161854401769482236671 4140923879174706862517141922366939200611389842023812091092485531738974 0819643698937800562340687590999618462486486787935824560376159122564571 0610680545626463309705882771561755593801222293412191735915622551273382 3748042216751729081040792045569477682250906363527918697880069416502491 0546033153192117919037436639062395400738591374792147588078720895455444 7279979321429004855468637202237881049738054843549303803226548973045643 810068336241874331740010535911884105899703979215643744473812966e-1);\n aHF := evalf(-1.525735678746850818217653470352135651821164556169070 5058161352307848070583895777531835937359309309754648282829212287674344 3394748997336731485926941311940150709990300033691431416504480257430466 7143664922313521374884461347699863456618521060972551215666486037002403 2693968829373568864112730894276288435272946902521289793166020072011350 0768655279361886210535194592206333604259112732902637766735367163471914 5088558895610873794216273051263024139407561461883189207208214590464628 062743210650203910550672562102267);\n aHG := evalf(.7371445601564892 1334674971072057985848298030381682678543898175081691239964591136575038 7863978307345190533974191463047618678373993639417529528724470673939571 7676544408270573648482469036585880890819726951229392491785480530386922 0839802483184059750818024390374887706088642732128037443196847562937348 2626194884066957534452371769125236348233622417138288568595639047182109 4819310583797860788385606085416044489548390047464364347899033242752043 104443146116628810612437521432075343494701535671995113908158957623988) ;\n aI1 := evalf(.10173669741115766387668096563698289719440800182203 3280925939874067473880702337108269969547284838498441467590783795865933 2455485443826466724145306392257625436771914376138601195984821185349289 4092341694955368471242580280452044126123262257749696944874773852003978 0098876665404873459544863889020924368160652176177730612258421157535372 0896836725360831814517191749455944180491584412504611704562531875988606 4477986832456710395201965557302385260050618148176127169726005015088142 98279178843422669902098758021018445);\n aI8 := evalf(-1.696217553209 4328107116668387097421661829920929061772461740965172335618456629478628 2425070223934808006398831940261047601475862502213008479568847330190059 4489104727834661264984606119382048642135776385995715496360165534821793 5353361106914998179843398797960525819976276980613214177585226165889488 5915943515378642431363391706267794311351372485187359635494240458017574 3035575192664873580898984204353855364366852044223249916450393696457438 3155422384603908817542355409553944847004134934422484619212453835208223 08);\n aI9 := evalf(-3.825235846211624254528740857512255693551264719 1328757402612311655485834821011166764179620945366273985998462114374429 3820094118852314713919734211063517617052099006390658045733678643664069 6528610219837719517712348940257067384725449647972932370445598618432071 9122989115630318117988459232243429059992522521191383888797050493440909 4162096384106457725657033626507921261100048755122854525464606940708486 2645117180095336812736884083474183787367785563478487782669509504115691 854909695098490814263693142901771805864);\n aIA := evalf(9.754768979 8858666488564315163336416271091057036741649866158241979097628545756687 9381590605219693181668500938882092588429086800919189004298005788985696 4570690632562392720523898186838224332681661875834212520832799345123209 5564066040269168459577348478815694423180155188298366728633360106566406 2458063198671342349020996387062412576916843939579271790551717279226283 9920115296283656042418573464902447033690831534710760337205500949452164 0745013526532361469296433268788782809904768059526733606386390110033241 9384);\n aIB := evalf(-2.5207677892271522911963363145912274863931433 7993368618912624071004183674241412569494052414011289764108030959605742 8033965102440963477918790021346265899380218198815246648753521538435209 0583227972299409099074669737262193448121419183799016104873571037235220 9848021996153052347885441993417242437741001923109547658893105946694642 9378864770699131982907611214351852456940351553458599627605172305551541 7973859847902829759934120233325521776053867852459249437160603615032213 74803742323117973804530727714050056257633);\n aIC := evalf(5.4724171 4522778004695099200056573479341339553653165241958500430079037098418594 5495977756212345068315663507321624247112643080477736933353548232691935 7688012518239307086075997130605410078563836152866758792561818542034041 7734815011232738211242337371668674817853738376895522985626983396859838 6311475742896199170452438977918433427349199909180200632976435112933245 7548554798811241226494369595588561223819231002916591775196208251437611 2480323014185319405663454530757199404787086297649135576088598225106509 8804405);\n aID := evalf(-9.7810981134587361210023838741080513720678 7305326495483337611425894073644438884168792916827471704001303356643043 1526883939066659891848468851306483525758389478335971807947754529389983 9183488648576023964718578099887009949573929874515077723768042642889596 6902463707206660000297986483872754322783362801648627059941122448513263 6902909941885341701920278058017799858556393590039937283096894715741683 5504356535792636794611362322225243100054485556803561447930721858876623 9464674007442547897576064894875452782519008);\n aIE := evalf(.318915 2692455334369024560213486753019540464785641163242047782111839399471147 1766815607279521298047870768742349351433915638614733794852034447644110 3058315140511194810043168152735298741718189786156861523175125674087709 3252103426014096082384728317427431446995961455750900054810906699120181 1455936109404026147989565493802084304568486972739043922947673188283770 8819945060557944707479716328536702895881307098359912031903595593850175 7433414168948141943228311556322555947120235142058052229559391213450294 793407647);\n aIF := evalf(3.447227036527756718156475010324322155277 0359240513928805705252236554104607620271389149440912502021308885723646 9659893860161256072531029688596344079388887956193820514610152614415679 1907055919170733577012513242288718653925950265631089390655401855851749 9713938142906965299406627201545210831811179315806002867846734489252490 0774103585413073330159561902566947241543496679807732223646805362160851 5989250381128769292021996896784573803787705795288404071382114356310343 680822603313770927726484737902928585937995578);\n aIG := evalf(-.605 1983612219277832241707671295607127814820499715293613761402732652780120 8100416535905631567487942091718941207074657405971337613334541429433338 9215811795396927088774021196385919398149956489267802752506074618676788 5494745444516525138811834518833832602458492626636843080815718826303865 3983962829445458182003745281169461407663188273808479582973154396045194 2809345559473344087564568763287165605612467166933490203399777442958365 5360417278912543650195444249255490221073195587050434461403047677343483 328497966962);\n aIH := evalf(.3334525350307787459202631378414806560 2876365056586347841175111742303839930733988233631282899077131330865587 9980672765554389546997484165497546808615640000914973583074772748730502 4213006107444936549480260540370195408622233422355980742991731791691066 3249286256863659341802308600103953687621205991748430234600357667716086 2737235681814922019173373521663673009371951965579138394176822012066641 2215012720531778408630806453178821627204730587207695381507696066232689 225964130725343135401600282043894596363814361475);\n\n # weights \n b1 := evalf(1/30);\n bC := evalf((14+SQRT7)/120);\n \+ bD := evalf((14-SQRT7)/60);\n bE := evalf((14-SQRT7)/120);\n \+ bF := evalf((14+SQRT7)/60);\n bG := bC;\n bH := bE;\n \+ bI := b1;\n \n for k from 1 to stps do\n f1 := fn(xk,yk); \n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n \+ t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n \+ t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(x k + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6; \n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a86*f 6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91 *f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h) ;\n t := aA1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n \+ fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9;\n fB := fn(xk + cB*h,yk + t*h);\n \+ t := aC1*f1 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h); \n t := aD1*f1 + aD8*f8 + aD9*f9 + aDA*fA \+ + aDB*fB + aDC*fC;\n fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC + aED*fD;\n \+ fE := fn(xk + cE*h,yk + t*h);\n t := aF1*f1 + aF8*f8 + a F9*f9 + aFA*fA + aFB*fB + aFC*fC + aFD*fD + aFE*fE;\n fF := fn (xk + cF*h,yk + t*h); \n t := aG1*f1 + aG8*f8 + aG9*f9 + aGA *fA + aGB*fB + aGC*fC + aGD*fD + aGE*fE\n \+ + aGF*fF;\n fG := f n(xk + cG*h,yk + t*h); \n t := aH1*f1 + aH8*f8 + aH9*f9 + a HA*fA + aHB*fB + aHC*fC + aHD*fD + aHE*fE\n \+ + aHF*fF + aHG*fG;\n fH := fn(xk + cH*h,yk + t*h); \n t := aI1*f1 + aI8*f8 + aI9*f9 + a IA*fA + aIB*fB + aIC*fC + aID*fD + aIE*fE\n \+ + aIF*fF + aIG*fG + aIH*fH;\n fI := fn(xk + h,yk + t*h); \n t := b1*f1 + bC*fC + bD*fD + bE*fE + bF*fF + bG*fG + bH*fH + bI*fI;\n\n yk := yk + t*h;\n \+ xk := xk + h:\n soln := soln,[xk,yk];\n if prntflg the n print('step',k,` `,[xk,yk]) end if;\n end do;\n Digits : = saveDigits;\n if outpt='rkstep' then\n eqns := \{SOLN_= [soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,c6_=c 6,c7_=c7,c8_=c8,c9_=c9,cA_=cA,cB_=cB,cC_=cC,\n cD_=cD,cE_=cE,c F_=cF,cG_=cG,cH_=cH,a31_=a31,a32_=a32,a41_=a41,\n a43_=a43,a51 _=a51,a53_=a53,a54_=a54,a61_=a61,a64_=a64,a65_=a65,a71_=a71,\n \+ a74_=a74,a75_=a75,a76_=a76,a81_=a81,a86_=a86,a87_=a87,a91_=a91,a96_=a 96,\n a97_=a97,a98_=a98,aA1_=aA1,aA6_=aA6,aA7_=aA7,aA8_=aA8,aA 9_=aA9,aB1_=aB1,\n aB6_=aB6,aB7_=aB7,aB8_=aB8,aB9_=aB9,aC1_=aC 1,aC8_=aC8,aC9_=aC9,aCA_=aCA,\n aCB_=aCB,aD1_=aD1,aD8_=aD8,aD9 _=aD9,aDA_=aDA,aDB_=aDB,aDC_=aDC,aE1_=aE1,\n aE8_=aE8,aE9_=aE9 ,aEA_=aEA,aEB_=aEB,aEC_=aEC,aED_=aED,aF1_=aF1,aF8_=aF8,\n aF9_ =aF9,aFA_=aFA,aFB_=aFB,aFC_=aFC,aFD_=aFD,aFE_=aFE,aG1_=aG1,aG8_=aG8,\n aG9_=aG9,aGA_=aGA,aGB_=aGB,aGC_=aGC,aGD_=aGD,aGE_=aGE,aGF_=aG F,aH1_=aH1,\n aH8_=aH8,aH9_=aH9,aHA_=aHA,aHB_=aHB,aHC_=aHC,aHD _=aHD,aHE_=aHE,aHF_=aHF,\n aHG_=aHG,aI1_=aI1,aI8_=aI8,aI9_=aI9 ,aIA_=aIA,aIB_=aIB,aIC_=aIC,aID_=aID,\n aIE_=aIE,aIF_=aIF,aIG_ =aIG,aIH_=aIH,b1_=b1,bC_=bC,bD_=bD,bE_=bE,bF_=bF,\n bG_=bG,bH_ =bH,bI_=bI\};\n return subs(eqns,eval(rk10step)); \n else \n return evalf([soln]);\n end if;\n end if;\nend proc: " }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 23 "rungk45: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15214 "rungk45 := proc(fxy,eqn1, eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,safety,errcontro l,\n c1,c2,c3,c4,c5,c8,c9,a21,a31,a32,a41,a42,a43,a51,a52,a53,a54,\n a61,a62,a63,a64,a65,a71,a73,a74,a75,a76,a81,a83,a84,\n a85,a86,a8 7,a91,a93,a94,a95,a96,a97,f1,f2,f3,f4,f5,f6,f7,\n f8,f9,b1,b3,b4,b5, b6,e1,e2,e3,e4,e5,e6,e7,yout,yerr,rs,eqns,\n maxstps,tiny,yscale,err ,htemp,hnext,saveDigits,eps,\n pgrow,pshrink,Options,j,prntflg,t,tt, errcntl,ymax,ymaxtemp,\n x,y,errc,x0,y0,xn,f,outpt,hmx,hmn,hstrt,tem p,sgn,finished,\n maxstepsize,laststep,minstepsize,ftd,inc,rk45step, rk45interp;\n\nrk45interp := proc(x_rk45interp::realcons)\n local e2 ,e3,e4,e5,e6,e7,s,t1,t2,t3,sm,sms,ss,\n b1,b3,b4,b5,b6,b7,b8,b9,xF,x S,yF,f1,f3,f4,f5,f6,\n f7,f8,f9,t,jF,jM,jS,n,h,data,xx,ys,saveDigits ;\n options `Copyright 2004 by Peter Stone`;\n \n data := SOLN_; \n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Dig its+5);\n xx := evalf(x_rk45interp);\n n := nops(data);\n if (da ta[1,1]data[n,1] or xxdata[1,1])) then\n error \+ \"independent variable is outside the interpolation interval: %1\",eva lf(data[1,1])..evalf(data[n,1]);\n end if;\n\n e2 := e2_;\n e3 : = e3_;\n e4 := e4_;\n e5 := e5_;\n e6 := e6_;\n e7 := e7_;\n\n # Perform a binary search for the interval containing x.\n n := n ops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n i f xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n else\n while j S-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] \+ then jF := jM else jS := jM end if;\n end do;\n if jM = n th en jF := n-1; jS := n end if;\n end if;\n \n # Get the data neede d from the list.\n xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 := data[jF,3];\n f3 := data[jF,5];\n f4 := dat a[jF,6];\n f5 := data[jF,7];\n f6 := data[jF,8];\n f7 := data[jF ,9];\n f8 := data[jF,10];\n f9 := data[jF,11];\n\n # Calculate t he parameters.\n h := xx-xF;\n s := h/(xS-xF);\n t1 := (-1710+(3 104+(-2439+696*s)*s)*s)*s;\n t2 := (-6+(32+(-51+24*s)*s)*s)*s;\n t 3 := 7+(-31+32*s)*s;\n sm := s-1;\n sms := sm*s;\n ss := sms*sm; \n b1:= t1/384+1;\n b3 := t2*e2;\n b4 := t2*e3;\n b5 := t2*e4; \n b6 := t2*e5;\n b7 := sms*t3/8;\n b8 := ss*e6;\n b9 := ss*(3 *s-1)*e7;\n \n # Calculate the interpolated y value.\n t := b1*f 1 + b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9;\n ys := y F + t*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk45 interp\n\nrk45step := proc(x_rk45step::realcons)\n local c2,c3,c4,c5 ,a21,a31,a32,a41,a42,a43,a51,a52,a53,a54,\n a61,a62,a63,a64,a65,f1,f 2,f3,f4,f5,\n f6,b1,b3,b4,b5,b6,\n xk,yk,t,jF,jM,jS,n,h,data,fn,xx ,ys,saveDigits;\n options `Copyright 2004 by Peter Stone`;\n \n \+ data := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trunc(eva lhf(Digits)),Digits+5);\n\n # procedure to evaluate the slope field \n fn := proc(X_,Y_)\n local val; \n val := traperror(eval f(FXY_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_],sav eDigits);\n end if;\n val;\n end proc;\n\n xx := eval f(x_rk45step);\n n := nops(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable \+ is outside the interpolation interval: %1\",evalf(data[1,1])..evalf(da ta[n,1]);\n end if;\n\n c2 := 0.2; c3 := 0.3; c4 := 0.8; c5 := c5_ ;\n a21 := c2; a31 := 0.075; a32 := 0.225; a41 := a41_; a42 := a42_; a43 := a43_;\n a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_; \n a61 := a61_; a62 := a62_; a63 := a63_; a64 := a64_; a65 := a65_; \n b1 := b1_; b3 := b3_; b4 := b4_; b5 := b5_; b6 := b6_;\n\n # Pe rform a binary search for the interval containing x.\n n := nops(dat a);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=d ata[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then j F := jM else jS := jM end if;\n end do;\n if jM = n then jF \+ := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one \+ step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a 21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54* f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f 3 + a64*f4 + a65*f5;\n f6 := fn(xk + h,yk + t*h);\n\n ys := yk + ( b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6)*h;\n Digits := saveDigits;\n \+ evalf(ys);\nend proc: # of rk45step\n\n # start of main procedure \+ rungk45\n x := lhs(eqn1);\n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs);\n y0 := rhs(eqn2);\n\n # Get \+ the options.\n # Set the default values to start with.\n maxstps : = 2000;\n t := Float(1,-Digits);\n hmx := 0.25;\n hstrt := evalf (0.1*10^(-ceil(Digits/10)));\n hmn := min(0.000005,hstrt/2000);\n \+ errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rkinterp';\n prntflg \+ := false;\n Options := [];\n if nargs > 3 then\n Options:=[ar gs[4..nargs]];\n if not type(Options,list(equation)) then\n \+ error \"each optional argument must be an equation\"\n end if; \n if hasoption(Options,'maxsteps','maxstps','Options') then\n \+ if not type(maxstps,posint) then\n error \"\\\"maxste ps\\\" must be a positive integer\"\n end if;\n end if;\n if hasoption(Options,'tolerance','t','Options') then \n \+ tt := evalf(t); \n if not type(tt,float) or \n tt>F loat(1,-iquo(Digits,2)) or tthmx) or evalf(hstrttrue then prntf lg := false end if; \n end if;\n if nops(Options)>0 then\n \+ error \"%1 is not a valid option for %2\",op(1,Options), procna me;\n end if;\n end if;\n\n if prntflg then\n print(`met hod: Prince-Dormand 7 stage, order 4-5`);\n print(`an embedded or der 4 scheme provides error control`);\n if outpt='rkinterp' then \n print(`3 extra stages are used to construct the interpolati on procedure`);\n end if;\n print(``);\n end if;\n\n sav eDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5); \n\n # procedure to evaluate the slope field\n fn := subs(\{FXY_=e valf(fxy),X_=x,Y_=y\},\n proc(X_,Y_)\n local val; \n va l := traperror(evalf(FXY_));\n if val=lasterror or not type(val,n umeric) then\n error \"evaluation of slope field failed at %1 \",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end pr oc);\n \n # nodes\n c2 := 0.2;\n c3 := 0.3;\n c4 := 0.8;\n \+ c5 := evalf(8/9);\n\n # linking coefficients\n a21 := c2;\n a31 \+ := 0.075;\n a32 := 0.225;\n a41 := evalf(44/45);\n a42 := evalf( -56/15);\n a43 := evalf(32/9);\n a51 := evalf(19372/6561);\n a52 := evalf(-25360/2187);\n a53 := evalf(64448/6561);\n a54 := evalf (-212/729);\n a61 := evalf(9017/3168);\n a62 := evalf(-355/33);\n \+ a63 := evalf(46732/5247);\n a64 := evalf(49/176);\n a65 := evalf (-5103/18656);\n a71 := evalf(35/384);\n a73 := evalf(500/1113);\n a74 := evalf(125/192);\n a75 := evalf(-2187/6784);\n a76 := eva lf(11/84);\n\n # weights\n b1 := a71;\n b3 := a73;\n b4 := a74 ;\n b5 := a75;\n b6 := a76;\n\n # error coefficients\n e1 := e valf(71/57600);\n e3 := evalf(-71/16695);\n e4 := evalf(71/1920); \n e5 := evalf(-17253/339200);\n e6 := evalf(22/525);\n e7 := -0 .025;\n\n ## nodes and linking coefficients for 3 extra stages used \+ for interpolation\n if outpt='rkinterp' then\n c8 := c2;\n \+ c9 := 0.5;\n a81 := evalf(5207/48000);\n a83 := evalf(92/79 5);\n a84 := evalf(-79/960);\n a85 := evalf(53217/848000);\n a86 := evalf(-11/300);\n a87 := evalf(4/125);\n a91 := evalf(613/6144);\n a93 := evalf(125/318);\n a94 := evalf(-1 25/3072);\n a95 := evalf(8019/108544);\n a96 := evalf(-11/19 2);\n a97 := evalf(1/32);\n end if;\n\n xstart := evalf(x0); \n xend:= evalf(xn);\n\n sgn := sign(xend-xstart);\n h := sgn*hs trt;\n\n eps := evalf(t);\n safety := 0.9;\n pgrow := -0.2;\n \+ pshrink := -0.25;\n errcontrol := 0.000189; #(5/safety)^(1/pgrow)\n tiny := Float(1,-3*saveDigits);\n \n xk := evalf(x0);\n yk := \+ evalf(y0);\n \n if ymaxtemp<>0 then\n ymax := abs(evalf(ymaxt emp))\n else\n ymax := max(abs(yk),tiny)\n end if;\n \n s oln := NULL;\n finished := false;\n f1 := fn(xk,yk);\n\n for k f rom 1 to maxstps do\n if errcntl=0 then yscale := max(abs(yk),abs (f1*h),tiny)\n elif errcntl=1 then yscale := max(abs(yk),tiny)\n \+ elif errcntl=2 then yscale := abs(ymax)\n else yscale := max (abs(f1*h),tiny) end if;\n\n if abs(h)>=hmx then\n h := s gn*hmx;\n maxstepsize := true;\n else\n maxstepsi ze := false;\n end if;\n if abs(h)<=hmn then\n h := \+ sgn*hmn;\n minstepsize := true;\n else\n minsteps ize := false;\n end if;\n if (xk+h-xend)*(xk+h-xstart) > 0 t hen \n h := xend-xk;\n laststep := true;\n else\n laststep := false;\n end if;\n\n # Do step.\n \+ do\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n \+ t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n \+ t := a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f 5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + h,yk + t*h);\n\n you t := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6)*h;\n\n t := \+ a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + h, yk + t*h);\n # error estimate\n yerr := (e1*f1 + e3*f3 + e4*f4 + e5*f5 + e6*f6 + e7*f7)*h;\n \n err := abs(y err/yscale)/eps;\n if err<=1.0 or minstepsize then break end \+ if;\n\n # Shrink, but not too much.\n if prntflg then \n print(`reducing step-size and repeating step`);\n \+ end if;\n htemp := safety*h*err^pshrink;\n if h>=0 t hen\n h := max(htemp,0.1*h)\n else\n h : = min(htemp,0.1*h)\n end if;\n if maxstepsize then max stepsize := false end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true;\n end if;\n \+ end do;\n\n if outpt='points' or outpt='rkstep' then\n \+ soln := soln,[xk,yk];\n else # extra stages needed for interpolat ion\n t := a81*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7 ;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a93* f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7;\n f9 := fn(xk + c9*h,y k + t*h);\n soln := soln,[xk,yk,f1,f2,f3,f4,f5,f6,f7,f8,f9];\n end if;\n \n if err>errcontrol then\n hnext := safety*h*err^pgrow;\n inc := false;\n else\n hne xt := 5*h;\n inc := true;\n end if;\n\n xk := xk + h ;\n yk := yout;\n f1 := fn(xk,yk);\n if prntflg then\n \+ print(`abs err estimate -> `,evalf(abs(yerr),5),`abs err bound -> `,evalf(abs(yscale)*eps,5));\n print('step',k,` `,h,` \+ `,[xk,yk]);\n if laststep then\n print(`last step`) ;\n elif inc then\n print(`increasing step-size by \+ a factor of 5`)\n elif maxstepsize then\n print(`us ed maximum step-size`)\n elif not minstepsize then\n \+ print(`using error to adjust step-size`)\n else \n \+ print(`used minimum step-size`)\n end if;\n print(`` );\n end if;\n\n if (xk-xend)*(xend-xstart)>=0 then\n \+ finished := true;\n break;\n end if;\n\n if abs(yk )>ymax then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n if not finished and k>=maxstps then\n error \"reached maximum \+ number of steps before reaching end of interval\"\n end if;\n\n so ln := soln,[xk,yk];\n if outpt='rkstep' then\n eqns := \{SOLN_= [soln],FXY_=fxy,X_=x,Y_=y,c5_=c5,a41_=a41,\n a42_=a42,a43_=a43 ,a51_=a51,a52_=a52,a53_=a53,a54_=a54,\n a61_=a61,a62_=a62,a63_ =a63,a64_=a64,a65_=a65,b1_=b1,\n b3_=b3,b4_=b4,b5_=b5,b6_=b6\} ;\n return subs(eqns,eval(rk45step));\n elif outpt='rkinterp' t hen\n e2 := evalf(-500/1113);\n e3 := evalf(-125/192);\n \+ e4 := evalf(2187/6784);\n e5 := evalf(-11/84);\n e6 := eva lf(125/24);\n e7 := evalf(16/3);\n eqns := \{SOLN_=[soln],e2 _=e2,e3_=e3,e4_=e4,e5_=e5,e6_=e6,e7_=e7\};\n return subs(eqns,eva l(rk45interp)); \n else\n return evalf[saveDigits]([soln]);\n \+ end if;\nend proc: # of rungk45" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} }{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "rungk45b: implementation" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21152 "rungk45b := proc(fxy,eqn1,eqn2) \n local ytemp,fn,soln,xk,yk ,k,xend,xstart,h,safety,errcontrol,\n c1,c2,c3,c4,c5,c6,c9,cA,cB,a21 ,a31,a32,a41,a42,a43,a51,a52,\n a53,a54,a61,a62,a63,a64,a65,a71,a72, a73,a74,a75,a76,a81,a83,\n a84,a85,a86,a87,a91,a93,a94,a95,a96,a97,a 98,aA1,aA3,aA4,aA5,\n aA6,aA7,aA8,aA9,aB1,aB3,aB4,aB5,aB6,aB7,aB8,aB 9,aBA,f1,f2,f3,\n f4,f5,f6,f7,f8,f9,fA,fB,b1,b3,b4,b5,b6,b7,e1,e2,e3 ,e4,e5,e6,\n e7,g1,g3,g4,g5,g6,g7,g8,d12,d13,d14,d15,d16,d32,d33,d34 ,d35,\n d36,d42,d43,d44,d45,d46,d52,d53,d54,d55,d56,d62,d63,d64,d65, \n d66,d72,d73,d74,d75,d76,d82,d83,d84,d85,d86,d92,d93,d94,d95,\n \+ d96,dA2,dA3,dA4,dA5,dA6,dB2,dB3,dB4,dB5,dB6,yout,yerr,rs,\n eqns,max stps,tiny,yscale,err,htemp,hnext,saveDigits,eps,\n pgrow,pshrink,Opt ions,j,prntflg,t,tt,errcntl,ymax,ymaxtemp,\n x,y,errc,x0,y0,xn,f,out pt,hmx,hmn,hstrt,temp,sgn,finished,\n maxstepsize,laststep,minstepsi ze,ftd,inc,rk45step,rk45interp;\n\nrk45interp := proc(x_rk45interp::re alcons)\n local d12,d13,d14,d15,d16,d32,d33,d34,d35,d36,d42,d43,\n \+ d44,d45,d46,d52,d53,d54,d55,d56,d62,d63,d64,d65,d66,d72,\n d73,d74, d75,d76,d82,d83,d84,d85,d86,d92,d93,d94,d95,d96,\n dA2,dA3,dA4,dA5,d A6,dB2,dB3,dB4,dB5,dB6,s,b1,b3,b4,b5,b6,\n b7,b8,b9,bA,bB,xF,xS,yF,f 1,f3,f4,f5,f6,f7,f8,f9,fA,fB,\n t,jF,jM,jS,n,h,data,xx,ys,saveDigits ;\n options `Copyright 2007 by Peter Stone`;\n \n data := SOLN_; \n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Dig its+5);\n xx := evalf(x_rk45interp);\n n := nops(data);\n if (da ta[1,1]data[n,1] or xxdata[1,1])) then\n error \+ \"independent variable is outside the interpolation interval: %1\",eva lf(data[1,1])..evalf(data[n,1]);\n end if;\n \n d12 := d12_; d13 : = d13_; d14 := d14_; d15 := d15_; d16 := d16_;\n d32 := d32_; d33 := d33_; d34 := d34_; d35 := d35_; d36 := d36_; \n d42 := d42_; d43 := d43_; d44 := d44_; d45 := d45_; d46 := d46_;\n d52 := d52_; d53 := \+ d53_; d54 := d54_; d55 := d55_; d56 := d56_; \n d62 := d62_; d63 := \+ d63_; d64 := d64_; d65 := d65_; d66 := d66_; \n d72 := d72_; d73 := \+ d73_; d74 := d74_; d75 := d75_; d76 := d76_; \n d82 := d82_; d83 := \+ d83_; d84 := d84_; d85 := d85_; d86 := d86_; \n d92 := d92_; d93 := \+ d93_; d94 := d94_; d95 := d95_; d96 := d96_; \n dA2 := dA2_; dA3 := \+ dA3_; dA4 := dA4_; dA5 := dA5_; dA6 := dA6_; \n dB2 := dB2_; dB3 := \+ dB3_; dB4 := dB4_; dB5 := dB5_; dB6 := dB6_;\n\n # Perform a binary \+ search for the interval containing x.\n n := nops(data);\n jF := 0 ;\n jS := n+1;\n\n if data[1,1] 1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then \+ jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM \+ := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS \+ := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n \+ end if;\n end if;\n \n # Get the data needed from the list.\n x F := data[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 := data[jF,3];\n f3 := data[jF,4];\n f4 := data[jF,5];\n f5 := dat a[jF,6];\n f6 := data[jF,7];\n f7 := data[jF,8];\n f8 := data[jF ,9];\n f9 := data[jF,10];\n fA := data[jF,11];\n fB := data[jF,1 2];\n\n # Calculate the parameters.\n h := xx-xF;\n s := h/(xS-x F);\n b1 := ((((d16*s+d15)*s+d14)*s+d13)*s+d12)*s+1;\n b3 := ((((d 36*s+d35)*s+d34)*s+d33)*s+d32)*s;\n b4 := ((((d46*s+d45)*s+d44)*s+d4 3)*s+d42)*s;\n b5 := ((((d56*s+d55)*s+d54)*s+d53)*s+d52)*s;\n b6 : = ((((d66*s+d65)*s+d64)*s+d63)*s+d62)*s;\n b7 := ((((d76*s+d75)*s+d7 4)*s+d73)*s+d72)*s;\n b8 := ((((d86*s+d85)*s+d84)*s+d83)*s+d82)*s;\n b9 := ((((d96*s+d95)*s+d94)*s+d93)*s+d92)*s;\n bA := ((((dA6*s+dA 5)*s+dA4)*s+dA3)*s+dA2)*s;\n bB := ((((dB6*s+dB5)*s+dB4)*s+dB3)*s+dB 2)*s; \n \n # Calculate the interpolated y value.\n t := b1*f1 + \+ b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8\n \+ + b9*f9 + bA*fA + bB*fB; \n ys := yF + t*h;\n Dig its := saveDigits;\n evalf(ys);\nend proc: # of rk45interp\n\nrk45st ep := proc(x_rk45step::realcons)\n local c2,c3,c4,c5,c6,a21,a31,a32, a41,a42,a43,a51,a52,\n a53,a54,a61,a62,a63,a64,a65,f1,f2,f3,f4,f5,f6 ,f7,b1,\n b3,b4,b5,b6,b7,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,\n sav eDigits;\n options `Copyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Dig its)),Digits+5);\n\n # procedure to evaluate the slope field\n fn \+ := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_)) ;\n if val=lasterror or not type(val,numeric) then\n erro r \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits) ;\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk45 step);\n n := nops(data);\n\n if (data[1,1]data [n,1] or xxdata[1,1])) then\n error \"independent variable is outsi de the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]) ;\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := \+ c6_;\n a21 := c2; a31 := a31_; a32 := a32_; a41 := a41_; a42 := a42_ ; a43 := a43_;\n a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_; \n a61 := a61_; a62 := a62_; a63 := a63_; a64 := a64_; a65 := a65_; \n b1 := b1_; b3 := b3_; b4 := b4_; b5 := b5_; b6 := b6_; b7 := b7_; \n\n # Perform a binary search for the interval containing x.\n n \+ := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n \+ if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do ;\n if jM = n then jF := n-1; jS := n end if;\n else\n whi le jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[j M,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data \+ needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n \+ # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk); \n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + \+ a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a 43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a5 3*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62 *f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n \+ t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn (xk + h,yk + t*h);\n\n ys := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b 6*f6 + b7*f7)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk45step\n\n # start of main procedure rungk45\n x := lhs(eqn1 );\n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn \+ := rhs(rs);\n y0 := rhs(eqn2);\n\n # Get the options.\n # Set th e default values to start with.\n maxstps := 2000;\n t := Float(1, -Digits);\n hmx := 0.25;\n hstrt := evalf(0.1*10^(-ceil(Digits/10) ));\n hmn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ymaxtem p := 0;\n outpt := 'rkinterp';\n prntflg := false;\n Options := \+ [];\n if nargs > 3 then\n Options:=[args[4..nargs]];\n if \+ not type(Options,list(equation)) then\n error \"each optional \+ argument must be an equation\"\n end if;\n if hasoption(Opti ons,'maxsteps','maxstps','Options') then\n if not type(maxstps ,posint) then\n error \"\\\"maxsteps\\\" must be a positive integer\"\n end if;\n end if;\n if hasoption(Option s,'tolerance','t','Options') then \n tt := evalf(t); \n \+ if not type(tt,float) or \n tt>Float(1,-iquo(Digits,2)) o r tthmx) or evalf(hstrttrue then prntflg := false end if; \n \+ end if;\n if nops(Options)>0 then\n error \"%1 is not \+ a valid option for %2\",op(1,Options), procname;\n end if;\n en d if;\n\n if prntflg then\n print(`method: Bogacki-Shampine 8 s tage FSAL, order 4-5`);\n print(`error control is provided by two embedded order 4 schemes with 6 and 8 stages respectively`);\n i f outpt='rkinterp' then\n print(`1 extra stage is used to cons truct the interpolation procedure`);\n end if;\n print(``); \n end if;\n\n saveDigits := Digits;\n Digits := max(trunc(evalh f(Digits)),Digits+5);\n\n # procedure to evaluate the slope field\n \+ fn := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\},\n proc(X_,Y_)\n \+ local val; \n val := traperror(evalf(FXY_));\n if val=laster ror or not type(val,numeric) then\n error \"evaluation of slop e field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n \+ val;\n end proc);\n \n # nodes\n c2 := evalf(1/6);\n c3 \+ := evalf(2/9);\n c4 := evalf(3/7);\n c5 := evalf(2/3);\n c6 := 0 .75;\n\n # linking coefficients\n a21 := c2;\n a31 := evalf(2/27 );\n a32 := evalf(4/27);\n a41 := evalf(183/1372);\n a42 := eval f(-162/343);\n a43 := evalf(1053/1372);\n a51 := evalf(68/297);\n \+ a52 := evalf(-4/11);\n a53 := evalf(42/143);\n a54 := evalf(1960 /3861);\n a61 := evalf(597/22528);\n a62 := evalf(81/352);\n a63 := evalf(63099/585728);\n a64 := evalf(58653/366080);\n a65 := ev alf(4617/20480);\n a71 := evalf(174197/959244);\n a72 := evalf(-30 942/79937);\n a73 := evalf(8152137/19744439);\n a74 := evalf(66610 6/1039181);\n a75 := evalf(-29421/29068);\n a76 := evalf(482048/41 4219);\n a81 := evalf(587/8064);\n a83 := evalf(4440339/15491840); \n a84 := evalf(24353/124800);\n a85 := evalf(387/44800);\n a86 \+ := evalf(2152/5985);\n a87 := evalf(7267/94080);\n\n # weights\n \+ b1 := a81;\n b3 := a83;\n b4 := a84;\n b5 := a85;\n b6 := a86 ;\n b7 := a87;\n\n # first set of error coefficients\n e1 := eva lf(-3/1280);\n e3 := evalf(6561/632320);\n e4 := evalf(-343/20800) ;\n e5 := evalf(243/12800);\n e6 := evalf(-1/95);\n\n # 2nd set \+ of error coefficients\n g1 := evalf(3817/1959552);\n g3 := evalf(- 140181/15491840);\n g4 := evalf(4224731/272937600);\n g5 := evalf( -8557/403200);\n g6 := evalf(57928/4363065);\n g7 := evalf(2393023 1/4366535040);\n g8 := evalf(-3293/556956);\n\n ## node and linkin g coefficients for the extra stage used for interpolation\n if outpt ='rkinterp' then\n c9 := 0.5;\n cA := 0.125;\n cB := 0. 7;\n a91 := evalf(455/6144);\n a93 := evalf(10256301/3540992 0);\n a94 := evalf(2307361/17971200);\n a95 := evalf(-387/10 2400);\n a96 := evalf(73/5130);\n a97 := evalf(-7267/215040) ;\n a98 := 0.3125e-1;\n aA1 := evalf(396397/5505024);\n \+ aA3 := evalf(2258493759/31727288320);\n aA4 := evalf(81187757/23 00313600);\n aA5 := evalf(-22833/91750400);\n aA6 := evalf(1 03307/4596480);\n aA7 := evalf(-428753/192675840);\n aA8 := \+ -0.1708984375e-2;\n aA9 := -0.7177734375e-1;\n aB1 := evalf( 207701627357/5371056000000);\n aB3 := evalf(12246097032477/982704 32000000);\n aB4 := evalf(67567739437541/1047355920000000);\n \+ aB5 := evalf(119410011/1989280000000);\n aB6 := evalf(317990169 7/59794959375);\n aB7 := evalf(106774031/198928000000);\n aB 8 := evalf(-8837591/3108250000);\n aB9 := evalf(3706859261/139871 25000);\n aBA := evalf(273181664/1748390625);\n end if;\n\n x start := evalf(x0);\n xend:= evalf(xn);\n\n sgn := sign(xend-xstar t);\n h := sgn*hstrt;\n\n eps := evalf(t);\n safety := 0.9;\n \+ pgrow := -0.2;\n pshrink := -0.25;\n errcontrol := 0.000189; #(5/ safety)^(1/pgrow)\n tiny := Float(1,-3*saveDigits);\n \n xk := ev alf(x0);\n yk := evalf(y0);\n \n if ymaxtemp<>0 then\n ymax := abs(evalf(ymaxtemp))\n else\n ymax := max(abs(yk),tiny)\n \+ end if;\n \n soln := NULL;\n finished := false;\n f1 := fn(xk ,yk);\n\n for k from 1 to maxstps do\n if errcntl=0 then yscale := max(abs(yk),abs(f1*h),tiny)\n elif errcntl=1 then yscale := m ax(abs(yk),tiny)\n elif errcntl=2 then yscale := abs(ymax)\n \+ else yscale := max(abs(f1*h),tiny) end if;\n\n if abs(h)>=hmx th en\n h := sgn*hmx;\n maxstepsize := true;\n else \n maxstepsize := false;\n end if;\n if abs(h)<=hmn \+ then\n h := sgn*hmn;\n minstepsize := true;\n els e\n minstepsize := false;\n end if;\n if (xk+h-xend) *(xk+h-xstart) > 0 then \n h := xend-xk;\n laststep := true;\n else\n laststep := false;\n end if;\n\n \+ # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + \+ c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk \+ + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f 4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk \+ + t*h);\n\n # first error estimate \n yerr := (e1*f1 + e3*f3 + e4*f4 + e5*f5 + e6*f6)*h;\n \n err := abs(yer r/yscale)/eps;\n if err<=1.0 or minstepsize then\n \+ t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n \+ f7 := fn(xk + h,yk + t*h);\n\n t := a81*f1 + a83*f3 + a84 *f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + h,yk + t*h) ; ## This is f1 for the next step.\n\n yout := yk + t*h;\n \n # 2nd (better) error estimate\n yerr := (g1*f 1 + g3*f3 + g4*f4 + g5*f5 + g6*f6 + g7*f7 + g8*f8)*h;\n \n \+ err := abs(yerr/yscale)/eps;\n if err<=1.0 or mins tepsize then break end if;\n end if;\n\n # Shrink, but not too much.\n if prntflg then\n print(`reducing \+ step-size and repeating step`);\n end if;\n htemp := s afety*h*err^pshrink;\n if h>=0 then\n h := max(htem p,0.1*h)\n else\n h := min(htemp,0.1*h)\n e nd if;\n if maxstepsize then maxstepsize := false end if;\n \+ if abs(h)<=hmn then\n h := sgn*hmn;\n mins tepsize := true;\n end if;\n end do;\n\n if outpt='p oints' or outpt='rkstep' then\n soln := soln,[xk,yk];\n e lse # extra stage needed for interpolation\n t := a91*f1 + a93 *f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(x k + c9*h,yk + t*h);\n t := aA1*f1 + aA3*f3 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f8\n \+ + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h );\n t := aB1*f1 + aB3*f3 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 \+ + aB8*f8\n + a B9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n soln := soln,[xk,yk,f1,f3,f4,f5,f6,f7,f8,f9,fA,fB];\n end if;\n \+ \n if err>errcontrol then\n hnext := safety*h*err^pgrow; \n inc := false;\n else\n hnext := 5*h;\n \+ inc := true;\n end if;\n\n xk := xk + h;\n yk := yout; \n f1 := f8; ## This a FSAL scheme.\n if prntflg then\n \+ print(`abs err estimate -> `,evalf(abs(yerr),5),`abs err bound -> \+ `,evalf(abs(yscale)*eps,5));\n print('step',k,` `,h,` `,[x k,yk]);\n if laststep then\n print(`last step`);\n \+ elif inc then\n print(`increasing step-size by a fa ctor of 5`)\n elif maxstepsize then\n print(`used m aximum step-size`)\n elif not minstepsize then\n pr int(`using error to adjust step-size`)\n else \n pr int(`used minimum step-size`)\n end if;\n print(``);\n end if;\n\n if (xk-xend)*(xend-xstart)>=0 then\n fi nished := true;\n break;\n end if;\n\n if abs(yk)>ym ax then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n i f not finished and k>=maxstps then\n error \"reached maximum numb er of steps before reaching end of interval\"\n end if;\n\n soln : = soln,[xk,yk];\n if outpt='rkstep' then\n eqns := \{SOLN_=[sol n],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,c4_=c4,\n c5_=c5,c6_=c6,a3 1_=a31,a32_=a32,a41_=a41,a42_=a42,a43_=a43,\n a51_=a51,a52_=a5 2,a53_=a53,a54_=a54,a61_=a61,a62_=a62,a63_=a63,\n a64_=a64,a65 _=a65,a71_=a71,a72_=a72,a73_=a73,a74_=a74,a75_=a75,\n a76_=a76 ,b1_=b1,b3_=b3,b4_=b4,b5_=b5,b6_=b6,b7_=b7\};\n return subs(eqns, eval(rk45step));\n elif outpt='rkinterp' then\n d12 := evalf(-1 740268245/225800176);\n d13 := evalf(8898987245/338700264);\n \+ d14 := evalf(-5015236155/112900088);\n d15 := evalf(5123511023/ 141125110);\n d16 := evalf(-22930710/2016073);\n d32 := eval f(-71899774821/15935040992);\n d33 := evalf(297870495687/79675204 96);\n d34 := evalf(-749811937419/7967520496);\n d35 := eval f(955239865479/9959400620);\n d36 := evalf(-17118994005/497970031 );\n d42 := evalf(-1249079433/419343184);\n d43 := evalf(517 4757651/209671592);\n d44 := evalf(-13026114087/209671592);\n \+ d45 := evalf(16594912467/262089490);\n d46 := evalf(-594799730/ 26208949);\n d52 := evalf(-7680015/64514336);\n d53 := evalf (31817205/32257168);\n d54 := evalf(-80091585/32257168);\n d 55 := evalf(20406897/8064292);\n d56 := evalf(-1828575/2016073); \n d62 := evalf(-198706368/38305387);\n d63 := evalf(1646424 192/38305387);\n d64 := evalf(-4144447104/38305387);\n d65 : = evalf(21119648256/191526935);\n d66 := evalf(-1513953280/383053 87);\n d72 := evalf(-34336575/32257168);\n d73 := evalf(1422 51525/16128584);\n d74 := evalf(-358081425/16128584);\n d75 \+ := evalf(91237185/4032146);\n d76 := evalf(-16350750/2016073);\n \+ d82 := evalf(15524261/12096438);\n d83 := evalf(-1364723218/ 127012599);\n d84 := evalf(1173592513/42337533);\n d85 := ev alf(-6202432568/211687665);\n d86 := evalf(22273440/2016073);\n \+ d92 := evalf(7310828/6048219);\n d93 := evalf(-238176340/1814 4657);\n d94 := evalf(299656313/6048219);\n d95 := evalf(-19 54423208/30241095);\n d96 := evalf(54408480/2016073);\n dA2 \+ := evalf(1796986880/139109037);\n dA3 := evalf(-197066027008/2921 289777);\n dA4 := evalf(5841897472/42337533);\n dA5 := evalf (-610268758016/4868816295);\n dA6 := evalf(1942241280/46369679); \n dB2 := evalf(5997212500/973763259);\n dB3 := evalf(-14547 3437500/2921289777);\n dB4 := evalf(5008015625/42337533);\n \+ dB5 := evalf(-108762925000/973763259);\n dB6 := evalf(1718700000/ 46369679);\n eqns := \{SOLN_=[soln],\n d12_=d12,d13_=d13,d 14_=d14,d15_=d15,d16_=d16,\n d32_=d32,d33_=d33,d34_=d34,d35_=d3 5,d36_=d36,\n d42_=d42,d43_=d43,d44_=d44,d45_=d45,d46_=d46,\n \+ d52_=d52,d53_=d53,d54_=d54,d55_=d55,d56_=d56,\n d62_=d62, d63_=d63,d64_=d64,d65_=d65,d66_=d66,\n d72_=d72,d73_=d73,d74_=d 74,d75_=d75,d76_=d76,\n d82_=d82,d83_=d83,d84_=d84,d85_=d85,d86 _=d86,\n d92_=d92,d93_=d93,d94_=d94,d95_=d95,d96_=d96,\n \+ dA2_=dA2,dA3_=dA3,dA4_=dA4,dA5_=dA5,dA6_=dA6,\n dB2_=dB2,dB3_= dB3,dB4_=dB4,dB5_=dB5,dB6_=dB6\};\n return subs(eqns,eval(rk45int erp)); \n else\n return evalf[saveDigits]([soln]);\n end if; \nend proc: # of rungk45" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 23 "rungk56: implementation" }}{PARA 0 "" 0 " " {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21139 "rungk56 := proc(fxy,eqn1,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart, h,safety,errcontrol,\n c2,c3,c4,c5,c6,c7,cA,cB,cC,a21,a31,a32,a41,a4 2,a43,a51,a52,\n a53,a54,a61,a62,a63,a64,a65,a71,a72,a73,a74,a75,a76 ,a81,a82,\n a83,a84,a85,a86,a91,a93,a94,a96,a97,a98,aA1,aA3,aA4,aA5, aA6,\n aA7,aA9,aB1,aB3,aB4,aB5,aB6,aB7,aB8,aB9,aBA,aC1,aC3,aC4,aC5, \n aC6,aC7,aC8,aC9,aCA,aCB,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC,\n \+ b1,b3,b4,b6,b7,b8,b9,bA,bB,bC,e1,e3,e4,e5,e6,e7,e8,\n d12,d13,d14,d1 5,d16,d32,d33,d34,d35,d36,d42,d43,d44,d45,d46,\n d52,d53,d54,d55,d56 ,d62,d63,d64,d65,d66,d72,d73,d74,d75,d76,\n d82,d83,d84,d85,d86,d92, d93,d94,d95,d96,dA2,dA3,dA4,\n dA5,dA6,dB2,dB3,dB4,dB5,dB6,dC2,dC3,d C4,dC5,dC6,yout,yerr,rs,\n eqns,maxstps,tiny,yscale,err,htemp,hnext, saveDigits,eps,pgrow,\n pshrink,Options,j,prntflg,t,tt,errcntl,ymax, ymaxtemp,x,y,errc,\n x0,y0,xn,f,outpt,hmx,hmn,hstrt,temp,sgn,finishe d,maxstepsize,\n laststep,minstepsize,ftd,inc,rk56step,rk56interp;\n \nrk56interp := proc(x_rk56interp::realcons)\n local d12,d13,d14,d15 ,d16,d32,d33,d34,d35,d36,d42,d43,\n d44,d45,d46,d62,d63,d64,d65,d66, d72,d73,d74,d75,d76,d82,\n d83,d84,d85,d86,d92,d93,d94,d95,d96,dA2,d A3,dA4,dA5,dA6,\n dB2,dB3,dB4,dB5,dB6,dB7,dC2,dC3,dC4,dC5,dC6,dC7,b1 ,b3,b4,\n b6,b7,b8,b9,bA,bB,bC,f1,f3,f4,f6,f7,f8,f9,fA,fB,fC,s,t,\n \+ jF,jM,jS,xF,yF,xS,n,h,data,xx,ys,saveDigits;\n options `Copyright \+ 2007 by Peter Stone`;\n \n data := SOLN_;\n saveDigits := Digits ;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n xx := evalf(x _rk56interp);\n n := nops(data);\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable is \+ outside the interpolation interval: %1\",evalf(data[1,1])..evalf(data[ n,1]);\n end if;\n \n d12 := d12_; d13 := d13_; d14 := d14_; d15 : = d15_; d16 := d16_; \n d32 := d32_; d33 := d33_; d34 := d34_; d35 : = d35_; d36 := d36_; \n d42 := d42_; d43 := d43_; d44 := d44_; d45 : = d45_; d46 := d46_; \n d62 := d62_; d63 := d63_; d64 := d64_; d65 : = d65_; d66 := d66_; \n d72 := d72_; d73 := d73_; d74 := d74_; d75 : = d75_; d76 := d76_; \n d82 := d82_; d83 := d83_; d84 := d84_; d85 : = d85_; d86 := d86_; \n d92 := d92_; d93 := d93_; d94 := d94_; d95 : = d95_; d96 := d96_; \n dA2 := dA2_; dA3 := dA3_; dA4 := dA4_; dA5 : = dA5_; dA6 := dA6_; \n dB2 := dB2_; dB3 := dB3_; dB4 := dB4_; dB5 : = dB5_; dB6 := dB6_; \n dC2 := dC2_; dC3 := dC3_; dC4 := dC4_; dC5 : = dC5_; dC6 := dC6_; \n\n # Perform a binary search for the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n \+ if data[1,1]1 do\n jM := tru nc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM \+ end if;\n end do;\n if jM = n then jF := n-1; jS := n end if ;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n en d do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \+ \n # Get the data needed from the list.\n xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 := data[jF,3];\n f3 := \+ data[jF,4];\n f4 := data[jF,5];\n f6 := data[jF,6];\n f7 := data [jF,7];\n f8 := data[jF,8];\n f9 := data[jF,9];\n fA := data[jF, 10];\n fB := data[jF,11];\n fC := data[jF,12];\n\n # Calculate t he parameters.\n h := xx-xF;\n s := h/(xS-xF);\n b1 := ((((d16*s +d15)*s+d14)*s+d13)*s+d12)*s+1;\n b3 := ((((d36*s+d35)*s+d34)*s+d33) *s+d32)*s;\n b4 := ((((d46*s+d45)*s+d44)*s+d43)*s+d42)*s;\n b6 := \+ ((((d66*s+d65)*s+d64)*s+d63)*s+d62)*s;\n b7 := ((((d76*s+d75)*s+d74) *s+d73)*s+d72)*s;\n b8 := ((((d86*s+d85)*s+d84)*s+d83)*s+d82)*s;\n \+ b9 := ((((d96*s+d95)*s+d94)*s+d93)*s+d92)*s;\n bA := ((((dA6*s+dA5) *s+dA4)*s+dA3)*s+dA2)*s;\n bB := ((((dB6*s+dB5)*s+dB4)*s+dB3)*s+dB2) *s;\n bC := ((((dC6*s+dC5)*s+dC4)*s+dC3)*s+dC2)*s;\n\n # Calculate the interpolated y value.\n t := b1*f1 + b3*f3 + b4*f4 + b6*f6 + b7 *f7 + b8*f8 + b9*f9\n + bA*fA + b B*fB + bC*fC;\n ys := yF + t*h;\n Digits := saveDigits;\n evalf( ys);\nend proc: # of rk56interp\n\nrk56step := proc(x_rk56step::realco ns)\n local c2,c3,c4,c5,c6,a21,a31,a32,a41,a42,a43,a51,a52,a53,a54, \n a61,a62,a63,a64,a65,a71,a72,a73,a74,a75,a76,a81,a82,a83,a84,\n \+ a85,a86,f1,f2,f3,f4,f5,f6,f7,f8,b1,b3,b4,b5,b6,b7,b8,xk,yk,t,\n jF,j M,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Copyright 2004 by Pete r Stone`;\n \n data := SOLN_;\n\n saveDigits := Digits;\n Digi ts := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evalua te the slope field\n fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not type(val,nu meric) then\n error \"evaluation of slope field failed at %1\" ,evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc ;\n\n xx := evalf(x_rk56step);\n n := nops(data);\n\n if (data[1 ,1]data[n,1] or xxdata[1,1])) then\n error \"ind ependent variable is outside the interpolation interval: %1\",evalf(da ta[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := .75; a21 := c2;\n a31 := a31_; a32 := a32_ ; a41 := a41_; a42 := a42_; a43 := a43_;\n a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_; a61 := a61_;\n a62 := a62_; a63 := a63_; \+ a64 := a64_; a65 := a65_; a71 := a71_;\n a72 := -2.15625; a73 := a73 _; a74 := a74_; a75 := a75_; a76 := a76_;\n a81 := a81_; a82 := a82_ ; a83 := a83_; a84 := a84_; a85 := -0.6515625;\n a86 := a86_; b1 := \+ b1_; b3 := b3_; b4 := b4_; b6 := b6_; b7 := .01;\n b8 := b8_;\n\n \+ # Perform a binary search for the interval containing x.\n n := nops (data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if \+ xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n else\n while jS- jF> 1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] t hen jF := jM else jS := jM end if;\n end do;\n if jM = n the n jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2 ;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3; \n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62*f2 + \+ a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a 71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + \+ h,yk + t*h);\n t := a81*f1 + a82*f2 + a83*f3 + a84*f4 + a85*f5 + a86 *f6;\n f8 := fn(xk + h,yk + t*h);\n \n ys := yk + (b1*f1 + b3*f3 + b4*f4 + b6*f6 + b7*f7 + b8*f8)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk56step\n\n # start of main procedure rungk56\n x := lhs(eqn1);\n y := lhs(eqn2);\n rs := rhs(eqn1); \n x0 := lhs(rs);\n xn := rhs(rs);\n y0 := rhs(eqn2);\n\n # Ge t the options.\n # Set the default values to start with.\n maxstps := 2000;\n t := Float(1,-Digits);\n hmx := 0.25;\n hstrt := eva lf(0.1*10^(-ceil(Digits/10)));\n hmn := min(0.000005,hstrt/2000);\n \+ errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rkinterp';\n prntfl g := false;\n Options := [];\n if nargs > 3 then\n Options:=[ args[4..nargs]];\n if not type(Options,list(equation)) then\n \+ error \"each optional argument must be an equation\"\n end i f;\n if hasoption(Options,'maxsteps','maxstps','Options') then\n \+ if not type(maxstps,posint) then\n error \"\\\"maxs teps\\\" must be a positive integer\"\n end if;\n end if; \n if hasoption(Options,'tolerance','t','Options') then \n \+ tt := evalf(t); \n if not type(tt,float) or \n tt >Float(1,-iquo(Digits,2)) or tthmx) or evalf(hstrttrue then prntf lg := false end if; \n end if;\n if nops(Options)>0 then\n \+ error \"%1 is not a valid option for %2\",op(1,Options), procna me;\n end if;\n end if;\n\n if prntflg then\n print(`met hod: Verner (2004) 8 stage, order 5-6`);\n print(`an embedded ord er 5 scheme provides error control`);\n if outpt='rkinterp' then \n print(`4 extra stages are used to construct the interpolati on procedure`);\n end if;\n print(``);\n end if;\n\n sav eDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5); \n\n # procedure to evaluate the slope field\n fn := subs(\{FXY_=e valf(fxy),X_=x,Y_=y\},\n proc(X_,Y_)\n local val; \n va l := traperror(evalf(FXY_));\n if val=lasterror or not type(val,n umeric) then\n error \"evaluation of slope field failed at %1 \",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end pr oc);\n \n # coefficients by Jim Verner 2004\n # nodes\n c2 := e valf(1/7);\n c3 := evalf(2/9);\n c4 := evalf(3/7);\n c5 := evalf (2/3);\n c6 := .75;\n\n # linking coefficients\n a21 := c2;\n \+ a31 := evalf(4/81);\n a32 := evalf(14/81);\n a41 := evalf(291/1372 );\n a42 := evalf(-27/49);\n a43 := evalf(1053/1372);\n a51 := e valf(86/297);\n a52 := evalf(-14/33);\n a53 := evalf(42/143);\n \+ a54 := evalf(1960/3861);\n a61 := evalf(-267/22528);\n a62 := eval f(189/704);\n a63 := evalf(63099/585728);\n a64 := evalf(58653/366 080);\n a65 := evalf(4617/20480);\n a71 := evalf(10949/6912);\n \+ a72 := -2.15625;\n a73 := evalf(-90891/68096);\n a74 := evalf(1129 31/25920);\n a75 := evalf(-69861/17920);\n a76 := evalf(26378/1077 3);\n a81 := evalf(1501/19008);\n a82 := evalf(-21/88);\n a83 := evalf(219519/347776);\n a84 := evalf(163807/926640);\n a85 := -0. 6515625;\n a86 := evalf(1544/1539);\n\n # weights\n b1 := evalf( 79/1080);\n b3 := evalf(19683/69160);\n b4 := evalf(16807/84240); \n b6 := evalf(2816/7695);\n b7 := .01;\n b8 := evalf(187/2800); \n\n # error coefficients\n e1 := 0.0025;\n e3 := evalf(-19683/1 383200);\n e4 := evalf(2401/78000);\n e5 := evalf(-243/4000);\n \+ e6 := evalf(64/1425);\n e7 := 0.01;\n e8 := evalf(-37/2800);\n\n \+ ## nodes and linking coefficients for 4 extra stages used for interpo lation\n ## coefficients by Peter Stone (2007) \n if outpt='rkinte rp' then;\n cA := 0.5;\n cB := 0.02;\n cC := 0.2;\n \+ a91 := b1;\n a93 := b3;\n a94 := b4;\n a96 := b6;\n \+ a97 := .01;\n a98 := b8;\n aA1 := evalf(437147/6393600); \n aA3 := evalf(37666701/116979200);\n aA4 := evalf(18206783 /311688000);\n aA5 := evalf(318087/2368000);\n aA6 := evalf( -125092/1423575);\n aA7 := evalf(-49/1850);\n aA9 := 0.3125e -1;\n aB1 := evalf(759377033/42187500000);\n aB3 := evalf(96 242803803/21612500000000);\n aB4 := evalf(-38501694091/1316250000 0000);\n aB5 := evalf(103821669/12500000000);\n aB6 := evalf (-386400752/75146484375);\n aB7 := evalf(-64159111/46875000000); \n aB8 := evalf(2357835043/1312500000000);\n aB9 := evalf(-5 2871/312500000);\n aBA := evalf(-28812/9765625);\n aC1 := ev alf(-56439341621/363389625000);\n aC3 := evalf(458482004217/58175 98718750);\n aC4 := evalf(642635325997/28344390750000);\n aC 5 := evalf(2264031/107671000);\n aC6 := evalf(-18595185664/258915 1078125);\n aC7 := evalf(-146506629/33647187500);\n aC8 := e valf(-1309139623/942121250000);\n aC9 := evalf(93111766/164871218 75);\n aCA := evalf(-43251617/1009415625);\n aCB := evalf(44 78125/15827637);\n end if;\n\n xstart := evalf(x0);\n xend:= eva lf(xn);\n\n sgn := sign(xend-xstart);\n h := sgn*hstrt;\n\n eps \+ := evalf(t);\n safety := 0.9;\n pgrow := -0.16666666666666666667; \n pshrink := -0.2;\n errcontrol := 0.00003401222408; #(5/safety) ^(1/pgrow);\n tiny := Float(1,-3*saveDigits);\n \n xk := evalf(x0 );\n yk := evalf(y0);\n \n if ymaxtemp<>0 then\n ymax := ab s(evalf(ymaxtemp))\n else\n ymax := max(abs(yk),tiny)\n end i f;\n \n soln := NULL;\n finished := false;\n f1 := fn(xk,yk); \n\n for k from 1 to maxstps do\n if errcntl=0 then yscale := m ax(abs(yk),abs(f1*h),tiny)\n elif errcntl=1 then yscale := max(ab s(yk),tiny)\n elif errcntl=2 then yscale := abs(ymax)\n else yscale := max(abs(f1*h),tiny) end if;\n\n if abs(h)>=hmx then\n \+ h := sgn*hmx;\n maxstepsize := true;\n else\n \+ maxstepsize := false;\n end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true;\n else\n \+ minstepsize := false;\n end if;\n if (xk+h-xend)*(xk+h -xstart) > 0 then \n h := xend-xk;\n laststep := true; \n else\n laststep := false;\n end if;\n\n # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + c2*h,y k + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h ,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3;\n f4 := f n(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f2 + a53*f3 + a54*f 4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a62 *f2 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h) ;\n t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6; \n f7 := fn(xk + h,yk + t*h);\n t := a81*f1 + a82*f2 + a83*f3 + a84*f4 + a85*f5 + a86*f6;\n f8 := fn(xk + h,yk + t*h );\n \n yout := yk + (b1*f1 + b3*f3 + b4*f4 + b6*f6 + \+ b7*f7 + b8*f8)*h;\n\n # error estimate\n yerr := (e1*f 1 + e3*f3 + e4*f4 + e5*f5 + e6*f6 + e7*f7 + e8*f8)*h;\n \n \+ err := abs(yerr/yscale)/eps;\n if err<=1.0 or minstepsiz e then break end if;\n\n # Shrink, but not too much.\n \+ if prntflg then\n print(`reducing step-size and repeating \+ step`);\n end if;\n htemp := safety*h*err^pshrink;\n \+ if h>=0 then\n h := max(htemp,0.1*h)\n else \n h := min(htemp,0.1*h)\n end if;\n if max stepsize then maxstepsize := false end if;\n if abs(h)<=hmn th en\n h := sgn*hmn;\n minstepsize := true;\n \+ end if;\n end do;\n\n if outpt='points' or outpt='rkstep ' then\n soln := soln,[xk,yk];\n else # 4 extra stages ne eded for interpolation\n t := a91*f1 + a93*f3 + a94*f4 + a96*f 6 + a97*f7 + a98*f8;\n f9 := fn(xk + h,yk + t*h);\n t \+ := aA1*f1 + aA3*f3 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7\n \+ + aA9*f9;\n fA := f n(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB3*f3 + aB4*f4 + aB5*f 5 + aB6*f6 + aB7*f7\n + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n t \+ := aC1*f1 + aC3*f3 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7\n \+ + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := f n(xk + cC*h,yk + t*h);\n soln := soln,[xk,yk,f1,f3,f4,f6,f7,f8 ,f9,fA,fB,fC];\n end if;\n \n if err>errcontrol then\n \+ hnext := safety*h*err^pgrow;\n inc := false;\n el se\n hnext := 5*h;\n inc := true; \n e nd if;\n\n xk := xk + h;\n yk := yout;\n f1 := fn(xk,yk );\n if prntflg then\n print(`abs err estimate -> `,evalf (abs(yerr),5),`abs err bound -> `,evalf(abs(yscale)*eps,5));\n \+ print('step',k,` `,h,` `,[xk,yk]);\n if laststep then\n \+ print(`last step`);\n elif inc then\n pri nt(`increasing step-size by a factor of 5`)\n elif maxstepsize then\n print(`used maximum step-size`)\n elif not \+ minstepsize then\n print(`using error to adjust step-size`) \n else \n print(`used minimum step-size`)\n \+ end if;\n print(``);\n end if;\n\n if (xk-xend)*(x end-xstart)>=0 then\n finished := true;\n break;\n \+ end if;\n\n if abs(yk)>ymax then ymax := abs(yk) end if;\n \+ h := hnext;\n end do;\n\n if not finished and k>=maxstps then\n \+ error \"reached maximum number of steps before reaching end of int erval\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt='rkstep' \+ then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,a31_=a31,a32_=a32,a41_=a41,a42_=a42,\n \+ a43_=a43,a51_=a51,a52_=a52,a53_=a53,a54_=a54,a61_=a61,\n a62_= a62,a63_=a63,a64_=a64,a65_=a65,a71_=a71,a73_=a73,\n a74_=a74,a 75_=a75,a76_=a76,a81_=a81,a82_=a82,a83_=a83,\n a84_=a84,a86_=a 86,b1_=b1,b3_=b3,b4_=b4,b6_=b6,b8_=b8\};\n return subs(eqns,eval( rk56step));\n elif outpt='rkinterp' then\n d12 := evalf(-207979 /7020);\n d13 := evalf(859406/5265);\n d14 := evalf(-1617661 /4680);\n d15 := evalf(553814/1755);\n d16 := evalf(-109975/ 1053);\n d32 := evalf(-19683/449540);\n d33 := evalf(190269/ 112385);\n d34 := evalf(-8207811/899080);\n d35 := evalf(169 2738/112385);\n d36 := evalf(-164025/22477);\n d42 := evalf( -16807/547560);\n d43 := evalf(487403/410670);\n d44 := eval f(-2336173/365040);\n d45 := evalf(722701/68445);\n d46 := e valf(-420175/82134);\n d62 := evalf(-5632/100035);\n d63 := \+ evalf(653312/300105);\n d64 := evalf(-391424/33345);\n d65 : = evalf(1937408/100035);\n d66 := evalf(-563200/60021);\n d7 2 := evalf(-1/650);\n d73 := evalf(58/975);\n d74 := evalf(- 417/1300);\n d75 := evalf(172/325);\n d76 := evalf(-10/39); \n d82 := evalf(-187/18200);\n d83 := evalf(5423/13650);\n \+ d84 := evalf(-77979/36400);\n d85 := evalf(8041/2275);\n \+ d86 := evalf(-935/546);\n d92 := evalf(101/5096);\n d93 := \+ evalf(-1957/2548);\n d94 := evalf(21429/5096);\n d95 := eval f(-4577/637);\n d96 := evalf(2375/637);\n dA2 := evalf(68/35 1);\n dA3 := evalf(-7810/1053);\n dA4 := evalf(1454/39);\n \+ dA5 := evalf(-18634/351);\n dA6 := evalf(24250/1053);\n \+ dB2 := evalf(1562500/51597);\n dB3 := evalf(-28906250/154791);\n \+ dB4 := evalf(781250/1911);\n dB5 := evalf(-19531250/51597); \n dB6 := evalf(19531250/154791);\n dC2 := evalf(-6125/8424) ;\n dC3 := evalf(330875/12636);\n dC4 := evalf(-23375/312); \n dC5 := evalf(78125/1053);\n dC6 := evalf(-78125/3159);\n \+ eqns := \{SOLN_=[soln],\n d12_=d12,d13_=d13,d14_=d14,d15_= d15,d16_=d16,\n d32_=d32,d33_=d33,d34_=d34,d35_=d35,d36_=d36,\n d42_=d42,d43_=d43,d44_=d44,d45_=d45,d46_=d46,\n d62_=d6 2,d63_=d63,d64_=d64,d65_=d65,d66_=d66,\n d72_=d72,d73_=d73,d74_ =d74,d75_=d75,d76_=d76,\n d82_=d82,d83_=d83,d84_=d84,d85_=d85,d 86_=d86,\n d92_=d92,d93_=d93,d94_=d94,d95_=d95,d96_=d96,\n \+ dA2_=dA2,dA3_=dA3,dA4_=dA4,dA5_=dA5,dA6_=dA6,\n dB2_=dB2,dB3 _=dB3,dB4_=dB4,dB5_=dB5,dB6_=dB6,\n dC2_=dC2,dC3_=dC3,dC4_=dC4, dC5_=dC5,dC6_=dC6\};\n return subs(eqns,eval(rk56interp));\n el se\n return evalf[saveDigits]([soln]);\n end if;\nend proc: # o f rungk56" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 " " {TEXT -1 24 "rungk56b: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21621 "rungk56b := proc(fxy ,eqn1,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,safety,err control,\n c2,c3,c4,c5,c6,cA,cB,cC,a21,a31,a32,a41,a42,a43,a51,a52,a 53,\n a54,a61,a62,a63,a64,a65,a71,a72,a73,a74,a75,a76,a81,a82,a83,\n a84,a85,a86,a91,a93,a94,a95,a96,a97,a98,aA1,aA3,aA4,aA5,aA6,\n aA 7,aA9,aB1,aB3,aB4,aB5,aB6,aB7,aB8,aB9,aBA,aC1,aC3,aC4,aC5,\n aC6,aC7 ,aC8,aC9,aCA,aCB,d12,d13,d14,d15,d16,d32,d33,d34,d35,\n d36,d42,d43, d44,d45,d46,d52,d53,d54,d55,d56,d62,d63,d64,d65,\n d66,d72,d73,d74,d 75,d76,d82,d83,d84,d85,d86,d92,d93,d94,d95,\n d96,dA2,dA3,dA4,dA5,dA 6,dB2,dB3,dB4,dB5,dB6,dB7,dC2,dC3,dC4,\n dC5,dC6,dC7,f1,f2,f3,f4,f5, f6,f7,f8,f9,fA,fB,fC,b1,b3,b4,b5,\n b6,b7,b8,b9,bA,bB,bC,e1,e3,e4,e5 ,e6,e7,e8,yout,yerr,rs,eqns,\n maxstps,tiny,yscale,err,htemp,hnext,s aveDigits,eps,pgrow,\n pshrink,Options,j,prntflg,t,tt,errcntl,ymax,y maxtemp,x,y,errc,\n x0,y0,xn,f,outpt,hmx,hmn,hstrt,temp,sgn,finished ,maxstepsize,\n laststep,minstepsize,ftd,inc,rk56step,rk56interp;\n \nrk56interp := proc(x_rk56interp::realcons)\n local d12,d13,d14,d15 ,d16,d32,d33,d34,d35,d36,d42,d43,\n d44,d45,d46,d52,d53,d54,d55,d56, d62,d63,d64,d65,d66,d72,\n d73,d74,d75,d76,d82,d83,d84,d85,d86,d92,d 93,d94,d95,d96,\n dA2,dA3,dA4,dA5,dA6,dB2,dB3,dB4,dB5,dB6,dB7,dC2,dC 3,dC4,\n dC5,dC6,dC7,b1,b3,b4,b6,b7,b8,b9,bA,bB,bC,f1,f3,f4,f6,\n \+ f7,f8,f9,fA,fB,fC,s,t,jF,jM,jS,xF,yF,xS,n,h,data,xx,ys,\n saveDigits ;\n options `Copyright 2007 by Peter Stone`;\n \n data := SOLN_; \n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Dig its+5);\n xx := evalf(x_rk56interp);\n n := nops(data);\n if (da ta[1,1]data[n,1] or xxdata[1,1])) then\n error \+ \"independent variable is outside the interpolation interval: %1\",eva lf(data[1,1])..evalf(data[n,1]);\n end if;\n \n d12 := d12_; d13 : = d13_; d14 := d14_; d15 := d15_; d16 := d16_; \n d32 := d32_; d33 : = d33_; d34 := d34_; d35 := d35_; d36 := d36_; \n d42 := d42_; d43 : = d43_; d44 := d44_; d45 := d45_; d46 := d46_;\n d52 := d52_; d53 := d53_; d54 := d54_; d55 := d55_; d56 := d56_; \n d62 := d62_; d63 := d63_; d64 := d64_; d65 := d65_; d66 := d66_; \n d72 := d72_; d73 := d73_; d74 := d74_; d75 := d75_; d76 := d76_; \n d82 := d82_; d83 := d83_; d84 := d84_; d85 := d85_; d86 := d86_; \n d92 := d92_; d93 := d93_; d94 := d94_; d95 := d95_; d96 := d96_; \n dA2 := dA2_; dA3 := dA3_; dA4 := dA4_; dA5 := dA5_; dA6 := dA6_; \n dB2 := dB2_; dB3 := dB3_; dB4 := dB4_; dB5 := dB5_; dB6 := dB6_; \n dC2 := dC2_; dC3 := dC3_; dC4 := dC4_; dC5 := dC5_; dC6 := dC6_; \n\n # Perform a binar y search for the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] the n jF := jM else jS := jM end if;\n end do;\n if jM = n then \+ jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n j M := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else j S := jM end if;\n end do;\n if jM = n then jF := n-1; jS := \+ n end if;\n end if;\n \n # Get the data needed from the list.\n \+ xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 \+ := data[jF,3];\n f3 := data[jF,4];\n f4 := data[jF,5];\n f5 := d ata[jF,6];\n f6 := data[jF,7];\n f7 := data[jF,8];\n f8 := data[ jF,9];\n f9 := data[jF,10];\n fA := data[jF,11];\n fB := data[jF ,12];\n fC := data[jF,13];\n\n # Calculate the parameters.\n h : = xx-xF;\n s := h/(xS-xF);\n b1 := ((((d16*s+d15)*s+d14)*s+d13)*s+ d12)*s+1;\n b3 := ((((d36*s+d35)*s+d34)*s+d33)*s+d32)*s;\n b4 := ( (((d46*s+d45)*s+d44)*s+d43)*s+d42)*s;\n b5 := ((((d56*s+d55)*s+d54)* s+d53)*s+d52)*s;\n b6 := ((((d66*s+d65)*s+d64)*s+d63)*s+d62)*s;\n \+ b7 := ((((d76*s+d75)*s+d74)*s+d73)*s+d72)*s;\n b8 := ((((d86*s+d85)* s+d84)*s+d83)*s+d82)*s;\n b9 := ((((d96*s+d95)*s+d94)*s+d93)*s+d92)* s;\n bA := ((((dA6*s+dA5)*s+dA4)*s+dA3)*s+dA2)*s;\n bB := ((((dB6* s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := ((((dC6*s+dC5)*s+dC4)*s+dC3)* s+dC2)*s;\n\n # Calculate the interpolated y value.\n t := b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8\n \+ + b9*f9 + bA*fA + bB*fB + bC*fC;\n ys := yF + t*h;\n Digit s := saveDigits;\n evalf(ys);\nend proc: # of rk56interp\n\nrk56step := proc(x_rk56step::realcons)\n local c2,c3,c4,c5,c6,a21,a31,a32,a4 1,a42,a43,a51,a52,a53,\n a54,a61,a62,a63,a64,a65,a71,a72,a73,a74,a75 ,a76,a81,a82,a83,\n a84,a85,a86,f1,f2,f3,f4,f5,f6,f7,f8,b1,b3,b4,b5, b6,b7,b8,\n xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDigits;\n optio ns `Copyright 2004 by Peter Stone`;\n \n data := SOLN_;\n\n save Digits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n \n # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n \+ local val; \n val := traperror(evalf(FXY_));\n if val=la sterror or not type(val,numeric) then\n error \"evaluation of \+ slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n xx := evalf(x_rk56step);\n n := no ps(data);\n\n if (data[1,1]data[n,1] or xxdata[1,1] )) then\n error \"independent variable is outside the interpolati on interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n \+ c2 := 0.1; c3 := c3_; c4 := c4_; c5 := 0.6; c6 := 0.8;\n a21 := c2 ; a31 := a31_; a32 := a32_; a41 := a41_; a42 := a42_;\n a43 := a43_; a51 := a51_; a52 := a52_; a53 := a53_; a54 := a54_;\n a61 := a61_; \+ a62 := a62_; a63 := a63_; a64 := a64_; a65 := a65_;\n a71 := a71_; a 72 := a72_; a73 := a73_; a74 := a74_; a75 := a75_;\n a76 := a76_; a8 1 := a81_; a82 := a82_; a83 := a83_; a84 := a84_;\n a85 := a85_; a86 := a86_; b1 := b1_; b3 := b3_; b4 := b4_;\n b5 := b5_; b6 := b6_; b 7 := b7_; b8 := c2;\n\n # Perform a binary search for the interval c ontaining x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc ((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM en d if;\n end do;\n if jM = n then jF := n-1; jS := n end if; \n else\n while jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n \+ if xx<=data[jM,1] then jF := jM else jS := jM end if;\n en d do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \+ \n # Get the data needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk; \n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h );\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t : = a41*f1 + a42*f2 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t : = a51*f1 + a52*f2 + a53*f3 + a54*f4; \n f5 := fn(xk + c5*h,yk + t*h );\n t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5; \n f6 := fn( xk + c6*h,yk + t*h);\n t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75 *f5 + a76*f6;\n f7 := fn(xk + h,yk + t*h);\n t := a81*f1 + a82*f2 + a83*f3 + a84*f4 + a85*f5 + a86*f6; \n f8 := fn(xk + h,yk + t*h); \n\n ys := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8* f8)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk56st ep\n\n # start of main procedure rungk56\n x := lhs(eqn1);\n y : = lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs) ;\n y0 := rhs(eqn2);\n\n # Get the options.\n # Set the default \+ values to start with.\n maxstps := 2000;\n t := Float(1,-Digits); \n hmx := 0.25;\n hstrt := evalf(0.1*10^(-ceil(Digits/10)));\n h mn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rkinterp';\n prntflg := false;\n Options := [];\n i f nargs > 3 then\n Options:=[args[4..nargs]];\n if not type( Options,list(equation)) then\n error \"each optional argument \+ must be an equation\"\n end if;\n if hasoption(Options,'maxs teps','maxstps','Options') then\n if not type(maxstps,posint) \+ then\n error \"\\\"maxsteps\\\" must be a positive integer \"\n end if;\n end if;\n if hasoption(Options,'toler ance','t','Options') then \n tt := evalf(t); \n if not type(tt,float) or \n tt>Float(1,-iquo(Digits,2)) or tthmx) or evalf(hstrttrue then prntflg := false end if; \n end if;\n \+ if nops(Options)>0 then\n error \"%1 is not a valid option for %2\",op(1,Options), procname;\n end if;\n end if;\n\n if prntflg then\n print(`method: Prince-Dormand 8 stage, order 5-6` );\n print(`an embedded order 5 scheme provides error control`); \n print(``);\n end if;\n\n saveDigits := Digits;\n Digits \+ := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate \+ the slope field\n fn := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\},\n p roc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \" evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc);\n \n ## coefficients by \+ Prince-Dormand 1981\n # nodes\n c2 := 0.1;\n c3 := evalf(2/9);\n c4 := evalf(3/7);\n c5 := 0.6;\n c6 := 0.8;\n\n # linking coe fficients\n a21 := c2;\n a31 := evalf(-2/81);\n a32 := evalf(20/ 81);\n a41 := evalf(615/1372);\n a42 := evalf(-270/343);\n a43 : = evalf(1053/1372);\n a51 := evalf(3243/5500);\n a52 := evalf(-54/ 55);\n a53 := evalf(50949/71500);\n a54 := evalf(4998/17875);\n \+ a61 := evalf(-26492/37125);\n a62 := evalf(72/55);\n a63 := evalf( 2808/23375);\n a64 := evalf(-24206/37125);\n a65 := evalf(338/459) ;\n a71 := evalf(5561/2376);\n a72 := evalf(-35/11);\n a73 := ev alf(-24117/31603);\n a74 := evalf(899983/200772);\n a75 := evalf(- 5225/1836);\n a76 := evalf(3925/4056);\n a81 := evalf(465467/26611 2);\n a82 := evalf(-2945/1232);\n a83 := evalf(-5610201/14158144); \n a84 := evalf(10513573/3212352);\n a85 := evalf(-424325/205632); \n a86 := evalf(376225/454272);\n\n # weights\n b1 := evalf(61/8 64);\n b3 := evalf(98415/321776);\n b4 := evalf(16807/146016);\n \+ b5 := evalf(1375/7344);\n b6 := evalf(1375/5408);\n b7 := evalf(- 37/1120);\n b8 := 0.1;\n\n # error coefficients\n e1 := evalf(-1 3/2400);\n e3 := evalf(19683/618800);\n e4 := evalf(-2401/31200); \n e5 := evalf(65/816);\n e6 := evalf(-15/416);\n e7 := evalf(-5 21/5600);\n e8 := 0.1;\n\n ## nodes and linking coefficients for 4 extra stages used for interpolation\n ## coefficients by Peter Ston e (2007) \n if outpt='rkinterp' then;\n cA := 0.5;\n cB := 0.02;\n cC := 0.15;\n a91 := b1;\n a93 := b3;\n a 94 := b4;\n a95 := b5;\n a96 := b6;\n a97 := b7;\n \+ a98 := b8;\n aA1 := evalf(733/10800);\n aA3 := evalf(299837 7/9193600);\n aA4 := evalf(573839/14601600);\n aA5 := evalf( 5485/58752);\n aA6 := evalf(-685/21632);\n aA7 := -0.2625e-1 ;\n aA9 := 0.3125e-1;\n aB1 := evalf(2427146021/135000000000 );\n aB3 := evalf(2754222507/591500000000);\n aB4 := evalf(- 91378600159/22815000000000);\n aB5 := evalf(3103229/540000000);\n aB6 := evalf(-11332557/6760000000);\n aB7 := evalf(-3912245 8309/6825000000000);\n aB8 := evalf(374854657/60937500000);\n \+ aB9 := evalf(-52871/312500000);\n aBA := evalf(-28812/9765625); \n aC1 := evalf(-8229283783/63769600000);\n aC3 := evalf(478 9897396317/128247042560000);\n aC4 := evalf(100568903057/10777062 400000);\n aC5 := evalf(33920221/4336332800);\n aC6 := evalf (602289/1626726400);\n aC7 := evalf(47369459043/29015168000000); \n aC8 := evalf(-1139431239/259064000000);\n aC9 := evalf(49 8462399/195294400000);\n aCA := evalf(-85633221/3985600000);\n \+ aCB := evalf(15365625/62494208);\n end if;\n\n xstart := evalf( x0);\n xend:= evalf(xn);\n\n sgn := sign(xend-xstart);\n h := sg n*hstrt;\n\n eps := evalf(t);\n safety := 0.9;\n pgrow := -0.166 66666666666666667;\n pshrink := -0.2;\n errcontrol := 0.0000340122 2408; #(5/safety)^(1/pgrow);\n tiny := Float(1,-3*saveDigits);\n \+ \n xk := evalf(x0);\n yk := evalf(y0);\n \n if ymaxtemp<>0 the n\n ymax := abs(evalf(ymaxtemp))\n else\n ymax := max(abs( yk),tiny)\n end if;\n \n soln := NULL;\n finished := false;\n \+ f1 := fn(xk,yk);\n\n for k from 1 to maxstps do\n if errcntl= 0 then yscale := max(abs(yk),abs(f1*h),tiny)\n elif errcntl=1 the n yscale := max(abs(yk),tiny)\n elif errcntl=2 then yscale := abs (ymax)\n else yscale := max(abs(f1*h),tiny) end if;\n\n if a bs(h)>=hmx then\n h := sgn*hmx;\n maxstepsize := true; \n else\n maxstepsize := false;\n end if;\n if \+ abs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true ;\n else\n minstepsize := false;\n end if;\n if (xk+h-xend)*(xk+h-xstart) > 0 then \n h := xend-xk;\n \+ laststep := true;\n else\n laststep := false;\n end if;\n\n # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a42*f2 + a43*f3; \n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a52*f 2 + a53*f3 + a54*f4; \n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a62*f2 + a63*f3 + a64*f4 + a65*f5; \n f6 := fn (xk + c6*h,yk + t*h);\n t := a71*f1 + a72*f2 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + h,yk + t*h);\n t : = a81*f1 + a82*f2 + a83*f3 + a84*f4 + a85*f5 + a86*f6; \n f8 : = fn(xk + h,yk + t*h);\n\n yout := yk + (b1*f1 + b3*f3 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8)*h;\n\n # error estimate\n \+ yerr := (e1*f1 + e3*f3 + e4*f4 + e5*f5 + e6*f6 + e7*f7 + e8*f8)* h;\n \n err := abs(yerr/yscale)/eps;\n if err< =1.0 or minstepsize then break end if;\n\n # Shrink, but not \+ too much.\n if prntflg then\n print(`reducing step- size and repeating step`);\n end if;\n htemp := safety *h*err^pshrink;\n if h>=0 then\n h := max(htemp,0.1 *h)\n else\n h := min(htemp,0.1*h)\n end if ;\n if maxstepsize then maxstepsize := false end if;\n \+ if abs(h)<=hmn then\n h := sgn*hmn;\n minstepsi ze := true;\n end if;\n end do;\n\n if outpt='points ' or outpt='rkstep' then\n soln := soln,[xk,yk];\n else # 4 extra stages needed for interpolation\n t := a91*f1 + a93*f 3 + a94*f4 + a95*f5 + a96*f6 + a97*f7\n \+ + a98*f8;\n f9 := fn(xk + h,yk + t*h );\n t := aA1*f1 + aA3*f3 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 \n + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB3*f3 \+ + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7\n \+ + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t* h);\n t := aC1*f1 + aC3*f3 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 \n + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n soln := soln,[xk,yk,f 1,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC];\n end if;\n\n \n if e rr>errcontrol then\n hnext := safety*h*err^pgrow;\n in c := false;\n else\n hnext := 5*h;\n inc := true; \n end if;\n\n xk := xk + h;\n yk := yout;\n f1 := fn(xk,yk);\n if prntflg then\n print(`abs err estimate - > `,evalf(abs(yerr),5),`abs err bound -> `,evalf(abs(yscale)*eps,5)); \n print('step',k,` `,h,` `,[xk,yk]);\n if lastste p then\n print(`last step`);\n elif inc then\n \+ print(`increasing step-size by a factor of 5`)\n elif m axstepsize then\n print(`used maximum step-size`)\n \+ elif not minstepsize then\n print(`using error to adjust s tep-size`)\n else \n print(`used minimum step-size` )\n end if;\n print(``);\n end if;\n\n if (x k-xend)*(xend-xstart)>=0 then\n finished := true;\n br eak;\n end if;\n\n if abs(yk)>ymax then ymax := abs(yk) end \+ if;\n h := hnext;\n end do;\n\n if not finished and k>=maxstp s then\n error \"reached maximum number of steps before reaching \+ end of interval\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt ='rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3 ,c4_=c4,\n a31_=a31,a32_=a32,a41_=a41,a42_=a42,a43_=a43,a51_=a 51,\n a52_=a52,a53_=a53,a54_=a54,a61_=a61,a62_=a62,a63_=a63,\n a64_=a64,a65_=a65,a71_=a71,a72_=a72,a73_=a73,a74_=a74,\n \+ a75_=a75,a76_=a76,a81_=a81,a82_=a82, a83_=a83,a84_=a84,\n \+ a85_=a85,a86_=a86,b1_=b1,b3_= b3,b4_=b4,b5_=b5,b6_=b6,b7_=b7\};\n \+ return subs(eqns,eval(rk56step));\n elif outpt='rkinterp' then\n \+ d12 := evalf(-242429/7968);\n d13 := evalf(6884087/35856);\n \+ d14 := evalf(-5114383/11952);\n d15 := evalf(1186139/2988);\n d16 := evalf(-589625/4482);\n d32 := evalf(-885735/26707408 );\n d33 := evalf(17616285/13353704);\n d34 := evalf(-111897 855/13353704);\n d35 := evalf(49305915/3338426);\n d36 := ev alf(-12301875/1669213);\n d42 := evalf(-16807/1346592);\n d4 3 := evalf(3008453/6059664);\n d44 := evalf(-6369853/2019888);\n \+ d45 := evalf(2806769/504972);\n d46 := evalf(-2100875/757458 ); \n d52 := evalf(-1375/67728);\n d53 := evalf(246125/304 776);\n d54 := evalf(-521125/101592);\n d55 := evalf(229625/ 25398);\n d56 := evalf(-171875/38097);\n d62 := evalf(-12375 /448864);\n d63 := evalf(246125/224432);\n d64 := evalf(-156 3375/224432);\n d65 := evalf(688875/56108);\n d66 := evalf(- 171875/28054);\n d72 := evalf(333/92960);\n d73 := evalf(-66 23/46480);\n d74 := evalf(42069/46480);\n d75 := evalf(-1853 7/11620);\n d76 := evalf(925/1162);\n d82 := evalf(-9/830); \n d83 := evalf(179/415);\n d84 := evalf(-1137/415);\n \+ d85 := evalf(2004/415);\n d86 := evalf(-200/83);\n d92 := ev alf(975/69139);\n d93 := evalf(-16657/29631);\n d94 := evalf (14706/4067);\n d95 := evalf(-456444/69139);\n d96 := evalf( 733000/207417);\n dA2 := evalf(43/332);\n dA3 := evalf(-5338 1/10458);\n dA4 := evalf(213799/6972);\n dA5 := evalf(-81112 /1743);\n dA6 := evalf(109000/5229);\n dB2 := evalf(6640625/ 211484);\n dB3 := evalf(-30859375/135954);\n dB4 := evalf(33 2421875/634452);\n dB5 := evalf(-78125000/158613);\n dB6 := \+ evalf(78125000/475839);\n dC2 := evalf(-56000/55029);\n dC3 \+ := evalf(42352000/1155609);\n dC4 := evalf(-792000/7553);\n \+ dC5 := evalf(40000000/385203);\n dC6 := evalf(-40000000/1155609); \n eqns := \{SOLN_=[soln],\n d12_=d12,d13_=d13,d14_=d14,d1 5_=d15,d16_=d16,\n d32_=d32,d33_=d33,d34_=d34,d35_=d35,d36_=d36 ,\n d42_=d42,d43_=d43,d44_=d44,d45_=d45,d46_=d46,\n d52_ =d52,d53_=d53,d54_=d54,d55_=d55,d56_=d56,\n d62_=d62,d63_=d63,d 64_=d64,d65_=d65,d66_=d66,\n d72_=d72,d73_=d73,d74_=d74,d75_=d7 5,d76_=d76,\n d82_=d82,d83_=d83,d84_=d84,d85_=d85,d86_=d86,\n \+ d92_=d92,d93_=d93,d94_=d94,d95_=d95,d96_=d96,\n dA2_=dA2, dA3_=dA3,dA4_=dA4,dA5_=dA5,dA6_=dA6,\n dB2_=dB2,dB3_=dB3,dB4_=d B4,dB5_=dB5,dB6_=dB6,\n dC2_=dC2,dC3_=dC3,dC4_=dC4,dC5_=dC5,dC6 _=dC6\};\n return subs(eqns,eval(rk56interp)); \n else\n r eturn evalf[saveDigits]([soln]);\n end if;\nend proc: # of rungk56" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "rungk56c: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19365 "rungk56c := proc(fxy,eqn1 ,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,safety,errcontr ol,\n c2,c3,c4,c5,c6,c7,cA,cB,cC,a21,a31,a32,a41,a42,a43,a51,a52,\n \+ a53,a54,a61,a62,a63,a64,a65,a71,a72,a73,a74,a75,a76,a81,a82,\n a83 ,a84,a85,a86,a87,a91,a94,a96,a97,a98,aA1,aA5,aA4,aA6,aA7,\n aA8,aA9, aB1,aB4,aB5,aB6,aB7,aB8,aB9,aBA,aC1,aC4,aC5,aC6,aC7,\n aC8,aC9,aCA,a CB,f1,f2,f3,f4,f5,f6,f7,f8,f9, fA,fB,fC,b1,b3,\n b4,b5,b6,b7,b8,b9,b A,bB,bC,e1,e4,e5,e6,e7,e8,e9,d12,d13,d14,\n d15,d16,d42,d43,d44,d45, d46,d62,d63,d64,d65,d66,\n d72,d73,d74,d75,d76,d82,d83,d84,d85,d86,d 92,d93,d94,d95,d96,\n dA2,dA3,dA4,dA5,dA6,dB2,dB3,dB4,dB5,dB6,dC2,dC 3,dC4,dC5,dC6,\n yout,yerr,rs,eqns,maxstps,tiny,yscale,err,htemp,\n \+ hnext,saveDigits,eps,pgrow,pshrink,Options,j,prntflg,\n t,tt,errcn tl,ymax,ymaxtemp,x,y,errc,x0,y0,xn,f,outpt,hmx,hmn,\n hstrt,temp,sgn ,finished,maxstepsize,laststep,minstepsize,\n ftd,inc,rk56step,rk56i nterp;\n\nrk56interp := proc(x_rk56interp::realcons)\n local d12,d13 ,d14,d15,d16,d42,d43,d44,d45,d46,d62,d63,d64,\n d65,d66,d72,d73,d74, d75,d76,d82,d83,d84,d85,d86,d92,d93,\n d94,d95,d96,dA2,dA3,dA4,dA5,d A6,dB2,dB3,dB4,dB5,dB6,dC2,\n dC3,dC4,dC5,dC6,s,b1,b4,b6,b7,b8,b9,bA ,bB,bC,xF,xS,yF,\n f1,f4,f6,f7,f8,f9,fA,fB,fC,t,jF,jM,jS,n,h,data,xx ,ys,\n saveDigits;\n options `Copyright 2007 by Peter Stone`;\n \+ \n data := SOLN_;\n saveDigits := Digits;\n Digits := max(trunc( evalhf(Digits)),Digits+5);\n xx := evalf(x_rk56interp);\n n := nop s(data);\n if (data[1,1]data[n,1] or xxdata[1,1])) \+ then\n error \"independent variable is outside the interpolation \+ interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n d 12 := d12_; d13 := d13_; d14 := d14_; d15 := d15_; d16 := d16_; \n d 42 := d42_; d43 := d43_; d44 := d44_; d45 := d45_; d46 := d46_; \n d 62 := d62_; d63 := d63_; d64 := d64_; d65 := d65_; d66 := d66_; \n d 72 := d72_; d73 := d73_; d74 := d74_; d75 := d75_; d76 := d76_; \n d 82 := d82_; d83 := d83_; d84 := d84_; d85 := d85_; d86 := d86_; \n d 92 := d92_; d93 := d93_; d94 := d94_; d95 := d95_; d96 := d96_; \n d A2 := dA2_; dA3 := dA3_; dA4 := dA4_; dA5 := dA5_; dA6 := dA6_; \n d B2 := dB2_; dB3 := dB3_; dB4 := dB4_; dB5 := dB5_; dB6 := dB6_; \n d C2 := dC2_; dC3 := dC3_; dC4 := dC4_; dC5 := dC5_; dC6 := dC6_;\n\n \+ # Perform a binary search for the interval containing x.\n n := nops (data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if \+ xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n else\n while jS- jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] th en jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed \+ from the list.\n xF := data[jF,1];\n xS := data[jS,1];\n yF := d ata[jF,2];\n f1 := data[jF,3];\n f4 := data[jF,4];\n f6 := data[ jF,5];\n f7 := data[jF,6];\n f8 := data[jF,7];\n f9 := data[jF,8 ];\n fA := data[jF,9];\n fB := data[jF,10];\n fC := data[jF,11]; \n\n # Calculate the parameters.\n h := xx-xF;\n s := h/(xS-xF); \n b1 := ((((d16*s+d15)*s+d14)*s+d13)*s+d12)*s+1;\n b4 := ((((d46* s+d45)*s+d44)*s+d43)*s+d42)*s;\n b6 := ((((d66*s+d65)*s+d64)*s+d63)* s+d62)*s;\n b7 := ((((d76*s+d75)*s+d74)*s+d73)*s+d72)*s;\n b8 := ( (((d86*s+d85)*s+d84)*s+d83)*s+d82)*s;\n b9 := ((((d96*s+d95)*s+d94)* s+d93)*s+d92)*s;\n bA := ((((dA6*s+dA5)*s+dA4)*s+dA3)*s+dA2)*s;\n \+ bB := ((((dB6*s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := ((((dC6*s+dC5)* s+dC4)*s+dC3)*s+dC2)*s; \n \n # Calculate the interpolated y value. \n t := b1*f1 + b4*f4 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*f B + bC*fC;\n ys := yF + t*h;\n Digits := saveDigits;\n evalf(ys) ;\nend proc: # of rk56interp\n\nrk56step := proc(x_rk56step::realcons) \n local c2,c3,c4,c5,c6,c7,a21,a31,a32,a41,a43,a51,a53,a54,\n a61, aa63,a64,a65,a71,a73,a74,a75,a76,a81,a83,a84,\n a85,a86,a87,f1,f2,f3 ,f4,f5,f6,f7,f8,b1,b4,b6,b7,b8,xk,yk,t,\n jF,jM,jS,n,h,data,fn,xx,ys ,saveDigits;\n options `Copyright 2004 by Peter Stone`;\n \n dat a := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf (Digits)),Digits+5);\n\n # procedure to evaluate the slope field\n \+ fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FX Y_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDig its);\n end if;\n val;\n end proc;\n\n xx := evalf(x_ rk56step);\n n := nops(data);\n\n if (data[1,1] data[n,1] or xxdata[1,1])) then\n error \"independent variable is o utside the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n ,1]);\n end if;\n\n c2 := 0.125; c3 := c3_; c4 := 0.25; c5 := 0.5; c6 := 0.6; c7 := 0.8;\n a21 := c2; a31 := a31_; a32 := a32_; a41 := 0.0625; a43 := 0.1875;\n a51 := 0.25; a53 := -0.75; a54 := 1; a61 : = 0.2144;\n a63 := -0.5328; a64 := 0.7616; a65 := 0.1568; a71 := a71 _;\n a73 := 0.192e-1; a74 := a74_; a75 := a75_; a76 := a76_;\n a81 := 0.18; a83 := 0.84; a84 := a84_; a85 := 2.96;\n a86 := a86_; a87 \+ := a87_; b1 := b1_; b4 := b4_; b6 := b6_; b7 := b7_;\n b8 := b8_;\n \n # Perform a binary search for the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n \+ if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do; \n if jM = n then jF := n-1; jS := n end if;\n else\n whil e jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM ,1] then jF := jM else jS := jM end if;\n end do;\n if jM = \+ n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data n eeded from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n \+ # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk); \n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + \+ a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a63*f3 + a64*f4 + a65 *f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a73*f3 + a74* f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f 1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + h,yk + t*h);\n \n ys := yk + (b1*f1 + b4*f4 + b6*f6 + b7*f7 + b8 *f8)*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk56s tep\n\n # start of main procedure rungk56\n x := lhs(eqn1);\n y \+ := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs );\n y0 := rhs(eqn2);\n\n # Get the options.\n # Set the default values to start with.\n maxstps := 2000;\n t := Float(1,-Digits); \n hmx := 0.25;\n hstrt := evalf(0.1*10^(-ceil(Digits/10)));\n h mn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rkinterp';\n prntflg := false;\n Options := [];\n i f nargs > 3 then\n Options:=[args[4..nargs]];\n if not type( Options,list(equation)) then\n error \"each optional argument \+ must be an equation\"\n end if;\n if hasoption(Options,'maxs teps','maxstps','Options') then\n if not type(maxstps,posint) \+ then\n error \"\\\"maxsteps\\\" must be a positive integer \"\n end if;\n end if;\n if hasoption(Options,'toler ance','t','Options') then \n tt := evalf(t); \n if not type(tt,float) or \n tt>Float(1,-iquo(Digits,2)) or tthmx) or evalf(hstrttrue then prntflg := false end if; \n \+ end if;\n if nops(Options)>0 then\n error \"%1 is not a valid option for %2\",op(1,Options), procname;\n end if;\n end if;\n\n if prntflg then\n print(`method: Verner (1991) 9 stage , order 5-6`);\n print(`an embedded order 5 scheme provides error control`);\n if outpt='rkinterp' then\n print(`3 extra s tages are used to construct the interpolation procedure`);\n end \+ if;\n print(``);\n end if;\n\n saveDigits := Digits;\n Digi ts := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evalua te the slope field\n fn := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\},\n \+ proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_)); \n if val=lasterror or not type(val,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits); \n end if;\n val;\n end proc);\n \n # coefficients b y Jim Verner 1991\n # nodes\n c2 := 0.125;\n c3 := evalf(1/6);\n c4 := 0.25;\n c5 := 0.5;\n c6 := 0.6;\n c7 := 0.8;\n\n # li nking coefficients\n a21 := c2;\n a31 := evalf(1/18);\n a32 := e valf(1/9);\n a41 := 0.0625;\n a43 := 0.1875;\n a51 := 0.25;\n \+ a53 := -0.75;\n a54 := 1;\n a61 := 0.2144;\n a63 := -0.5328;\n \+ a64 := 0.7616;\n a65 := 0.1568;\n a71 := evalf(-98/1875);\n a73 := 0.192e-1;\n a74 := evalf(10736/13125);\n a75 := evalf(-1936/18 75);\n a76 := evalf(22/21);\n a81 := 0.18;\n a83 := 0.84;\n a8 4 := evalf(-2924/1925);\n a85 := 2.96;\n a86 := evalf(-15/7);\n \+ a87 := evalf(15/22);\n a91 := evalf(11/144);\n a94 := evalf(256/69 3);\n a96 := evalf(125/504);\n a97 := evalf(125/528);\n a98 := e valf(5/72);\n\n # weights\n b1 := a91;\n b4 := a94;\n b6 := a9 6;\n b7 := a97;\n b8 := a98;\n\n # error coefficients\n e1 := \+ evalf(1/48);\n e4 := evalf(-32/231);\n e5 := evalf(2/3);\n e6 := evalf(-125/168);\n e7 := evalf(125/528);\n e8 := evalf(25/168);\n e9 := evalf(-4/21);\n\n ## nodes and linking coefficients for 3 e xtra stages used for interpolation\n if outpt='rkinterp' then\n \+ cA := 0.5;\n cB := 0.75;\n cC := 0.9;\n aA1 := evalf(1 73/2304);\n aA4 := evalf(8/21);\n aA5 := evalf(-1/9);\n \+ aA6 := evalf(1625/8064);\n aA7 := evalf(-125/2304);\n aA8 : = evalf(-445/8064);\n aA9 := evalf(127/2016);\n aB1 := evalf (153/2048);\n aB4 := evalf(237/616);\n aB5 := evalf(-33/128) ;\n aB6 := evalf(375/896);\n aB7 := evalf(-375/22528);\n \+ aB8 := evalf(-45/896);\n aB9 := evalf(201/3584);\n aBA := \+ 0.140625;\n aC1 := 0.7525125e-1;\n aC4 := evalf(91368/240625 );\n aC5 := -0.1296;\n aC6 := evalf(8073/22400);\n aC7 \+ := evalf(10449/70400);\n aC8 := evalf(13851/560000);\n aC9 : = evalf(-7533/700000);\n aCA := evalf(162/3125);\n end if;\n\n \+ xstart := evalf(x0);\n xend:= evalf(xn);\n\n sgn := sign(xend-xs tart);\n h := sgn*hstrt;\n\n eps := evalf(t);\n safety := 0.9;\n pgrow := -0.16666666666666666667;\n pshrink := -0.2;\n errcontr ol := 0.00003401222408; #(5/safety)^(1/pgrow);\n tiny := Float(1,-3 *saveDigits);\n \n xk := evalf(x0);\n yk := evalf(y0);\n \n i f ymaxtemp<>0 then\n ymax := abs(evalf(ymaxtemp))\n else\n \+ ymax := max(abs(yk),tiny)\n end if;\n \n soln := NULL;\n fini shed := false;\n f1 := fn(xk,yk);\n\n for k from 1 to maxstps do\n if errcntl=0 then yscale := max(abs(yk),abs(f1*h),tiny)\n e lif errcntl=1 then yscale := max(abs(yk),tiny)\n elif errcntl=2 t hen yscale := abs(ymax)\n else yscale := max(abs(f1*h),tiny) end \+ if;\n\n if abs(h)>=hmx then\n h := sgn*hmx;\n max stepsize := true;\n else\n maxstepsize := false;\n e nd if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n mi nstepsize := true;\n else\n minstepsize := false;\n \+ end if;\n if (xk+h-xend)*(xk+h-xstart) > 0 then \n h := x end-xk;\n laststep := true;\n else\n laststep := \+ false;\n end if;\n\n # Do step.\n do\n t := a21 *f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a 32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,y k + t*h);\n t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 \+ + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + h,yk + t* h);\n t := a91*f1 + a94*f4 + a96*f6 + a97*f7 + a98*f8;\n \+ f9 := fn(xk + h,yk + t*h); ## This is f1 for the next step.\n \+ \n ##yout := yk + (b1*f1 + b4*f4 + b6*f6 + b7*f7 + b8*f8)*h ;\n yout := yk + t*h;\n\n # error estimate\n y err := (e1*f1 + e4*f4 + e5*f5 + e6*f6 + e7*f7 + e8*f8 + e9*f9)*h;\n \+ \n err := abs(yerr/yscale)/eps;\n if err<=1.0 o r minstepsize then break end if;\n\n # Shrink, but not too muc h.\n if prntflg then\n print(`reducing step-size an d repeating step`);\n end if;\n htemp := safety*h*err^ pshrink;\n if h>=0 then\n h := max(htemp,0.1*h)\n \+ else\n h := min(htemp,0.1*h)\n end if;\n \+ if maxstepsize then maxstepsize := false end if;\n if abs (h)<=hmn then\n h := sgn*hmn;\n minstepsize := t rue;\n end if;\n end do;\n\n if outpt='points' or ou tpt='rkstep' then\n soln := soln,[xk,yk];\n else # extra \+ stages needed for interpolation\n t := aA1*f1 + aA4*f4 + aA5*f 5 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + a B8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n \+ t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA;\n fC := fn(xk + cC*h,yk + t*h);\n soln := s oln,[xk,yk,f1,f4,f6,f7,f8,f9,fA,fB,fC];\n end if;\n \n i f err>errcontrol then\n hnext := safety*h*err^pgrow;\n \+ inc := false;\n else\n hnext := 5*h;\n inc := tr ue;\n end if;\n\n xk := xk + h;\n yk := yout;\n f1 := f9; ## This a FSAL scheme.\n if prntflg then\n print( `abs err estimate -> `,evalf(abs(yerr),5),`abs err bound -> `,evalf(ab s(yscale)*eps,5));\n print('step',k,` `,h,` `,[xk,yk]);\n \+ if laststep then\n print(`last step`);\n el if inc then\n print(`increasing step-size by a factor of 5` )\n elif maxstepsize then\n print(`used maximum ste p-size`)\n elif not minstepsize then\n print(`using error to adjust step-size`)\n else \n print(`used \+ minimum step-size`)\n end if;\n print(``);\n end \+ if;\n\n if (xk-xend)*(xend-xstart)>=0 then\n finished := \+ true;\n break;\n end if;\n\n if abs(yk)>ymax then ym ax := abs(yk) end if;\n h := hnext;\n end do;\n\n if not fini shed and k>=maxstps then\n error \"reached maximum number of step s before reaching end of interval\"\n end if;\n\n soln := soln,[xk ,yk];\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fx y,X_=x,Y_=y,c3_=c3,a31_=a31,\n a32_=a32,a71_=a71,a74_=a74,a75_ =a75,a76_=a76,a84_=a84,\n a86_=a86,a87_=a87,b1_=b1,b4_=b4,b6_= b6,b7_=b7,b8_=b8\};\n return subs(eqns,eval(rk56step));\n elif \+ outpt='rkinterp' then \n d12 := evalf(-8921/1872);\n d13 := \+ evalf(92843/8424);\n d14 := evalf(-37577/2808);\n d15 := eva lf(5771/702);\n d16 := evalf(-2125/1053);\n d42 := evalf(115 20/1001);\n d43 := evalf(-17920/429);\n d44 := evalf(186880/ 3003);\n d45 := evalf(-6144/143);\n d46 := evalf(102400/9009 );\n d62 := evalf(5625/728);\n d63 := evalf(-4375/156);\n \+ d64 := evalf(45625/1092);\n d65 := evalf(-375/13);\n d66 \+ := evalf(6250/819);\n d72 := evalf(16875/2288);\n d73 := eva lf(-30625/1144);\n d74 := evalf(45625/1144);\n d75 := evalf( -7875/286);\n d76 := evalf(3125/429);\n d82 := evalf(225/104 );\n d83 := evalf(-1225/156);\n d84 := evalf(1825/156);\n \+ d85 := evalf(-105/13);\n d86 := evalf(250/117);\n d92 := \+ evalf(27/13);\n d93 := evalf(-215/13);\n d94 := evalf(536/13 );\n d95 := evalf(-548/13);\n d96 := evalf(200/13);\n d A2 := evalf(-459/26);\n dA3 := evalf(1067/13);\n dA4 := eval f(-3691/26);\n dA5 := evalf(1408/13);\n dA6 := evalf(-400/13 );\n dB2 := evalf(64/13);\n dB3 := evalf(-16256/351);\n \+ dB4 := evalf(13376/117);\n dB5 := evalf(-12800/117);\n dB6 \+ := evalf(12800/351);\n dC2 := evalf(-3125/234);\n dC3 := eva lf(78125/1053);\n dC4 := evalf(-109375/702);\n dC5 := evalf( 50000/351);\n dC6 := evalf(-50000/1053);\n eqns := \{SOLN_=[ soln],\n d12_=d12,d13_=d13,d14_=d14,d15_=d15,d16_=d16,\n \+ d42_=d42,d43_=d43,d44_=d44,d45_=d45,d46_=d46,\n d62_=d62,d63_= d63,d64_=d64,d65_=d65,d66_=d66,\n d72_=d72,d73_=d73,d74_=d74,d7 5_=d75,d76_=d76,\n d82_=d82,d83_=d83,d84_=d84,d85_=d85,d86_=d86 ,\n d92_=d92,d93_=d93,d94_=d94,d95_=d95,d96_=d96,\n dA2_ =dA2,dA3_=dA3,dA4_=dA4,dA5_=dA5,dA6_=dA6,\n dB2_=dB2,dB3_=dB3,d B4_=dB4,dB5_=dB5,dB6_=dB6,\n dC2_=dC2,dC3_=dC3,dC4_=dC4,dC5_=dC 5,dC6_=dC6\};\n return subs(eqns,eval(rk56interp));\n else\n \+ return evalf[saveDigits]([soln]);\n end if;\nend proc: # of rungk 56" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 23 "rungk67: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49110 "rungk67 := proc(fxy,eqn1, eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,safety,errcontro l,\n c2,c3,c4,c5,c6,c7,c8,cC,cD,cE,cF,cG,a21,a32,a41,a43,a51,a53,\n \+ a54,a61,a63,a64,a65,a71,a73,a74,a75,a76,a81,a83,a84,a85,a86,\n a87 ,a91,a93,a94,a95,a96,a97,a98,aA1,aA3,aA4,aA5,aA6,aA7,aB1,\n aB3,aB4, aB5,aB6,aB7,aB8,aB9,aC1,aC3,aC4,aC5,aC6,aC7,aC8,aC9,\n aCB,aD1,aD3,a D4,aD5,aD6,aD7,aD8,aD9,aDB,aDC,aE1,aE3,aE4,aE5,\n aE6,aE7,aE8,aE9,aE B,aEC,aED,aF1,aF3,aF4,aF5,aF6,aF7,aF8,aF9,\n aFB,aFC,aFD,aG1,aG3,aG4 ,aG5,aG6,aG7,aG8,aG9,aGB,aGC,aGD,f1,\n f2,f3,f4,f5,f6,f7,f8,f9,fA,fB ,fC,fD,fE,fF,fG,b1,b4,b5,b6,b7,\n b8,b9,e1,e4,e5,e6,e7,e8,e9,eA,d12, d13,d14,d15,d16,d17,d42,\n d43,d44,d45,d46,d47,d52,d53,d54,d55,d56,d 57,d62,d63,d64,d65,\n d66,d67,d72,d73,d74,d75,d76,d77,d82,d83,d84,d8 5,d86,d87,d92,\n d93,d94,d95,d96,d97,dB2,dB3,dB4,dB5,dB6,dB7,dC2,dC3 ,dC4,dC5,\n dC6,dC7,dD2,dD3,dD4,dD5,dD6,dD7,dE2,dE3,dE4,dE5,dE6,dE7, dF2,\n dF3,dF4,dF5,dF6,dF7,dG2,dG3,dG4,dG5,dG6,dG7,yout,SQRT,yerr,\n rs,eqns,maxstps,tiny,yscale,err,htemp,hnext,saveDigits,eps,\n pgr ow,pshrink,Options,j,prntflg,t,tt,errcntl,ymax,ymaxtemp,\n x,y,errc, x0,y0,xn,f,outpt,hmx,hmn,hstrt,temp,sgn,finished,\n maxstepsize,last step,minstepsize,ftd,inc,rk67step,rk67interp;\n\nrk67interp := proc(x_ rk67interp::realcons)\n local d12,d13,d14,d15,d16,d17,d42,d43,d44,d4 5,d46,d47,d52,d53,d54,\n d55,d56,d57,d62,d63,d64,d65,d66,d67,d72,d73 ,d74,d75,d76,d77,d82,\n d83,d84,d85,d86,d87,dB2,dB3,dB4,dB5,dB6,dB7, dC2,dC3,dC4,dC5,dC6,\n dC7,dD2,dD3,dD4,dD5,dD6,dD7,dE2,dE3,dE4,dE5,d E6,dE7,dF2,dF3,dF4,\n dF5,dF6,dF7,dG2,dG3,dG4,dG5,dG6,dG7,s,b1,b4,b5 ,b6,b7,b8,b9,bB,bC,\n bD,bE,bF,bG,xF,xS,yF,f1,f4,f5,f6,f7,f8,f9,fB,f C,fD,fE,fF,fG,t,jF,\n jM,jS,n,h,data,xx,ys,saveDigits;\n options ` Copyright 2007 by Peter Stone`;\n \n data := SOLN_;\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n xx \+ := evalf(x_rk67interp);\n n := nops(data);\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent va riable is outside the interpolation interval: %1\",evalf(data[1,1])..e valf(data[n,1]);\n end if;\n\n d12 := d12_; d13 := d13_; d14 := d1 4_; d15 := d15_; d16 := d16_; d17 := d17_;\n d42 := d42_; d43 := d43 _; d44 := d44_; d45 := d45_; d46 := d46_; d47 := d47_;\n d52 := d52_ ; d53 := d53_; d54 := d54_; d55 := d55_; d56 := d56_; d57 := d57_;\n \+ d62 := d62_; d63 := d63_; d64 := d64_; d65 := d65_; d66 := d66_; d67 \+ := d67_;\n d72 := d72_; d73 := d73_; d74 := d74_; d75 := d75_; d76 : = d76_; d77 := d77_;\n d82 := d82_; d83 := d83_; d84 := d84_; d85 := d85_; d86 := d86_; d87 := d87_;\n d92 := d92_; d93 := d93_; d94 := \+ d94_; d95 := d95_; d96 := d96_; d97 := d97_;\n dB2 := dB2_; dB3 := d B3_; dB4 := dB4_; dB5 := dB5_; dB6 := dB6_; dB7 := dB7_;\n dC2 := dC 2_; dC3 := dC3_; dC4 := dC4_; dC5 := dC5_; dC6 := dC6_; dC7 := dC7_;\n dD2 := dD2_; dD3 := dD3_; dD4 := dD4_; dD5 := dD5_; dD6 := dD6_; dD 7 := dD7_;\n dE2 := dE2_; dE3 := dE3_; dE4 := dE4_; dE5 := dE5_; dE6 := dE6_; dE7 := dE7_;\n dF2 := dF2_; dF3 := dF3_; dF4 := dF4_; dF5 \+ := dF5_; dF6 := dF6_; dF7 := dF7_;\n dG2 := dG2_; dG3 := dG3_; dG4 : = dG4_; dG5 := dG5_; dG6 := dG6_; dG7 := dG7_;\n\n # Perform a binar y search for the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] the n jF := jM else jS := jM end if;\n end do;\n if jM = n then \+ jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n j M := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else j S := jM end if;\n end do;\n if jM = n then jF := n-1; jS := \+ n end if;\n end if;\n \n # Get the data needed from the list.\n \+ xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 \+ := data[jF,3];\n f4 := data[jF,4];\n f5 := data[jF,5];\n f6 := d ata[jF,6];\n f7 := data[jF,7];\n f8 := data[jF,8];\n f9 := data[ jF,9];\n fB := data[jF,10];\n fC := data[jF,11];\n fD := data[jF ,12];\n fE := data[jF,13];\n fF := data[jF,14];\n fG := data[jF, 15];\n\n # Calculate the parameters.\n h := xx-xF;\n s := h/(xS- xF);\n b1 := (((((d17*s+d16)*s+d15)*s+d14)*s+d13)*s+d12)*s+1;\n b4 := (((((d47*s+d46)*s+d45)*s+d44)*s+d43)*s+d42)*s;\n b5 := (((((d57* s+d56)*s+d55)*s+d54)*s+d53)*s+d52)*s;\n b6 := (((((d67*s+d66)*s+d65) *s+d64)*s+d63)*s+d62)*s;\n b7 := (((((d77*s+d76)*s+d75)*s+d74)*s+d73 )*s+d72)*s;\n b8 := (((((d87*s+d86)*s+d85)*s+d84)*s+d83)*s+d82)*s;\n b9 := (((((d97*s+d96)*s+d95)*s+d94)*s+d93)*s+d92)*s;\n bB := (((( (dB7*s+dB6)*s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := (((((dC7*s+dC6)*s +dC5)*s+dC4)*s+dC3)*s+dC2)*s; \n bD := (((((dD7*s+dD6)*s+dD5)*s+dD4) *s+dD3)*s+dD2)*s;\n bE := (((((dE7*s+dE6)*s+dE5)*s+dE4)*s+dE3)*s+dE2 )*s;\n bF := (((((dF7*s+dF6)*s+dF5)*s+dF4)*s+dF3)*s+dF2)*s;\n bG : = (((((dG7*s+dG6)*s+dG5)*s+dG4)*s+dG3)*s+dG2)*s;\n\n # Calculate the interpolated y value.\n t := b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7*f7 \+ + b8*f8 + b9*f9 + bB*fB\n + bC*fC + bD*fD + bE*fE + bF*fF + bG*fG;\n ys := yF + t*h;\n Digits := saveDigits ;\n evalf(ys);\nend proc: # of rk67interp\n\nrk67step := proc(x_rk67 step::realcons)\n local c2,c3,c4,c5,c6,c7,c9,a21,a32,a41,a43,a51,a53 ,a54,a61,\n a63,a64,a65,a71,a73,a74,a75,a76,a81,a83,a84,a85,a86,a87, aA1,\n a93,a94,a95,a96,a97,a98,f1,f2,f3,f4,f5,f6,f7,f8,f9,b1,b4,b5, \n b6,b7,b8,b9,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDigits;\n op tions `Copyright 2007 by Peter Stone`;\n \n data := SOLN_;\n\n s aveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5) ;\n\n # procedure to evaluate the slope field\n fn := proc(X_,Y_) \n local val; \n val := traperror(evalf(FXY_));\n if va l=lasterror or not type(val,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end i f;\n val;\n end proc;\n\n xx := evalf(x_rk67step);\n n : = nops(data);\n\n if (data[1,1]data[n,1] or xxdata[ 1,1])) then\n error \"independent variable is outside the interpo lation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if; \n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7 _;\n c8 := c8_; a21 := c2; a32 := c3; a41 := a41_; a43 := 0.125;\n \+ a51 := a51_; a53 := a53_; a54 := a54_; a61 := a61_; a63 := a63_;\n \+ a64 := a64_; a65 := a65_; a71 := a71_; a73 := a73_; a74 := a74_; \n \+ a75 := a75_; a76 := a76_; a81 := a81_; a83 := a83_; a84 := a84_;\n a 85 := a85_; a86 := a86_; a87 := a87_; a91 := a91_; a93 := a93_; \n a 94 := a94_; a95 := a95_; a96 := a96_; a97 := a97_; a98 := a98_; \n b 1 := b1_; b4 := b4_; b5 := b5_; b6 := b6_; b7 := b7_; b8 := b8_;\n b 9 := b9_;\n\n # Perform a binary search for the interval containing \+ x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1] 1 do\n jM := trunc((jF+jS)/2 );\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n if x x<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get \+ the data needed from the list.\n xk := data[jF,1];\n yk := data[jF ,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := f n(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := \+ a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a63*f3 + a64*f4 + a6 5*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a73*f3 + a7 4*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a8 1*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c 8*h,yk + t*h);\n t := a91*f1 + a93*f3 + a94*f4 + a95*f5 + a96*f6 + \+ a97*f7 + a98*f8;\n f9 := fn(xk + h,yk + t*h);\n ys := yk + (b1*f1 \+ + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9)*h;\n Digits := save Digits;\n evalf(ys);\nend proc: # of rk67step\n\n # start of main \+ procedure rungk67\n x := lhs(eqn1);\n y := lhs(eqn2);\n rs := rh s(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs);\n y0 := rhs(eqn2);\n \n # Get the options.\n # Set the default values to start with.\n \+ maxstps := 2000;\n t := Float(1,-Digits);\n hmx := 0.5;\n hstr t := evalf(0.1*10^(-ceil(Digits/10)));\n hmn := min(0.000005,hstrt/2 000);\n errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rkinterp';\n \+ prntflg := false;\n Options := [];\n if nargs > 3 then\n Op tions:=[args[4..nargs]];\n if not type(Options,list(equation)) th en\n error \"each optional argument must be an equation\"\n \+ end if;\n if hasoption(Options,'maxsteps','maxstps','Options') then\n if not type(maxstps,posint) then\n error \" \\\"maxsteps\\\" must be a positive integer\"\n end if;\n \+ end if;\n if hasoption(Options,'tolerance','t','Options') then \+ \n tt := evalf(t); \n if not type(tt,float) or \n \+ tt>Float(1,-iquo(Digits,2)) or tthmx) or eval f(hstrttrue then prntflg := false end if; \n end if;\n if nops (Options)>0 then\n error \"%1 is not a valid option for %2\",o p(1,Options), procname;\n end if;\n end if;\n\n if prntflg th en\n print(`method: Enright (Verner formula 1990) 10 stage, order 6-7`);\n print(`an embedded order 6 scheme provides error contro l`);\n if outpt='rkinterp' then\n print(`6 extra stages a re used to construct the interpolation procedure`);\n end if;\n \+ print(``);\n end if;\n\n saveDigits := Digits;\n Digits := m ax(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the \+ slope field\n fn := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\},\n proc( X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \"eval uation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc);\n \n ## coefficients by Jim V erner\n # nodes \n c2 := evalf(1/18);\n c3 := evalf(1/9);\n c4 := evalf(1/6);\n c5 := evalf(4/9);\n c6 := evalf(19/39);\n c7 : = evalf(7/9);\n c8 := evalf(8/9);\n\n # linking coefficients\n a 21 := c2;\n a32 := c3; \n a41 := evalf(1/24);\n a43 := 0.125; \n a51 := evalf(44/81);\n a53 := evalf(-56/27);\n a54 := evalf(1 60/81);\n a61 := evalf(91561/685464);\n a63 := evalf(-12008/28561) ;\n a64 := evalf(55100/85683);\n a65 := evalf(29925/228488);\n a 71 := evalf(-1873585/1317384);\n a73 := evalf(15680/2889);\n a74 : = evalf(-4003076/1083375);\n a75 := evalf(-43813/21400);\n a76 := \+ evalf(5751746/2287125);\n a81 := evalf(50383360/12679821);\n a83 : = evalf(-39440/2889);\n a84 := evalf(1258442432/131088375);\n a85 \+ := evalf(222872/29425);\n a86 := evalf(-9203268152/1283077125);\n \+ a87 := evalf(24440/43197);\n a91 := evalf(-22942833/6327608);\n a9 3 := evalf(71784/5947);\n a94 := evalf(-572980/77311);\n a95 := ev alf(-444645/47576);\n a96 := evalf(846789710/90281407);\n a97 := e valf(-240750/707693);\n a98 := evalf(3972375/14534468);\n aA1 := e valf(3379947/720328);\n aA3 := evalf(-10656/677);\n aA4 := evalf(7 8284/7447);\n aA5 := evalf(71865/5416);\n aA6 := evalf(-2803372/21 8671);\n aA7 := evalf(963000/886193); \n\n # weights\n b1 := \+ evalf(28781/595840);\n b4 := evalf(820752/3128125);\n b5 := evalf( 11259/280000);\n b6 := evalf(188245551/625100000);\n b7 := evalf(8 667/43120);\n b8 := evalf(286011/2737280);\n b9 := evalf(5947/1400 00);\n\n # error coefficients\n e1 := evalf(-3531/595840);\n e4 \+ := evalf(7704/284375);\n e5 := evalf(-95337/280000);\n e6 := evalf (3933106749/10626700000);\n e7 := evalf(-8667/66640);\n e8 := eval f(286011/2737280);\n e9 := evalf(5947/140000);\n eA := evalf(-677/ 10000);\n\n ## nodes and linking coefficients for 6 extra stages use d for interpolation\n ## coefficients essentially those of W.H.Enrig ht (1993) \n if outpt='rkinterp' then\n SQRT := evalf[Digits+3] (sqrt(90853));\n cC := evalf(442/909-4/6363*SQRT);\n cD := 0 .33;\n cE := 0.49;\n cF := 0.61;\n cG := 0.35;\n a B1 := b1; aB4 := b4; aB5 := b5;\n aB6 := b6; aB7 := b7; aB8 := b8 ; aB9 := b9;\n aC1 := evalf(11500782840073597085891/2287581300932 41376394480 +\n 347602667982997729/57189532523310344098620 *SQRT);\n aC4 := evalf(794918767646448887177152/32025779882649511 30209375 -\n 137422384360867840768/32025779882649511302093 75*SQRT);\n aC5 := evalf(84269124746798382647/3981448936459923705 000 -\n 215293121258077787/995362234114980926250*SQRT);\n \+ aC6 := evalf(12030734412172250507022797/7999726275582101704271250 0 -\n 2041655568620905891771/6938538096168149437378125*SQR T);\n aC7 := evalf(12608885740419399331/613143136214828250570 -\n 657488494427626594/5211716657826040129845*SQRT);\n a C8 := evalf(-1171044770847163931/264779896617906218640 +\n \+ 24247798591381697/463364819081335882620*SQRT);\n aC9 := evalf(-1 409205185688274391/177391289248214422500 +\n 3057311703540 761/44347822312053605625*SQRT);\n aCB := evalf(243561230299384/30 409935299693901-\n 2322434132608/30409935299693901*SQRT); \n aD1 := evalf(1502306202720008333061447/29374766853376000000000 000 +\n 3126692833058959793443287/762510197979934208000000 000000*SQRT);\n aD4 := evalf(14575285912174737090561/604293889062 50000000000 -\n 9077872758165741724029/3137252154456875000 00000000*SQRT);\n aD5 := evalf(-18036559373971584362499/475997648 000000000000000-\n 38537171144973334348911/247118938935680 0000000000000*SQRT);\n aD6 := evalf(1352920089897847431103274703/ 18065300735720000000000000000 -\n 4036637284909007967945489 447/93787815299563952000000000000000*SQRT);\n aD7 := evalf(-23090 9355000085637997/22657488044800000000000 -\n 66461401670047 034311683/2940715373334592000000000000*SQRT);\n aD8 := evalf(5700 7473719445403888437/4653353006848000000000000-\n 5781799708 82375410328571/120791737351760384000000000000*SQRT);\n aD9 := eva lf(4052341300370405229/336632000000000000000+\n 21273682982 30962281/2446722167680000000000000*SQRT);\n aDB := evalf(-1833418 153249156089/122113258000000000000+\n 1846789421375916171/7 92453987791000000000000*SQRT);\n aDC := evalf(895329040032388269/ 566605517120000000000+\n 79170642190635173586639/735397300 670048000000000000*SQRT);\n aE1 := evalf(634723127031558373177977 56131/1177630791475985897600000000000 +\n 45365424798583876 1866431/29440769786899647440000000000*SQRT);\n aE4 := evalf(33245 9938902110536824077757/1541658854501111328125000000 -\n 942 1396091134251901173/77082942725055566406250000*SQRT);\n aE5 := ev alf(21808118118695032079526627/1103957109796600000000000000 -\n \+ 409297522766940260019/27598927744915000000000000*SQRT);\n aE 6 := evalf(163434554627706470804331019839/1232292123810454750000000000 000 -\n 13132645398396901409262867/123229212381045475000000 000000*SQRT);\n aE7 := evalf(115345969968418926169167/60717641038 81300000000000 -\n 12320669221539113043/2428705641552520000 00000*SQRT);\n aE8 := evalf(-42556750795339917186944817/107922847 05371561600000000000 -\n 6021136996292392683093/26980711763 4289040000000000*SQRT);\n aE9 := evalf(-1992929168149816073596867 /275989277449150000000000000 -\n 204896940778270418139/2759 8927744915000000000000*SQRT);\n aEB := evalf(84056791648457596199 143983/10732339834309606220000000000 +\n 251275313862273430 82961/1341542479288700777500000000*SQRT);\n aEC := evalf(71749363 80776481074611049124987387/\n \+ 74715880296975738146964440000000000 +\n 87555751461837 5155781636808981/1494317605939514762939288800000000*SQRT);\n aED \+ := evalf(-25949179022771474387043/594829247355851428960600 -\n \+ 880254813493103748/2974146236779257144803*SQRT);\n aF1 := eva lf(3040302770337136329768408203011/57703908782323308982400000000000 - \n 27805664230777838767882689/14425977195580827245600000000 00*SQRT);\n aF4 := evalf(2626167145333789823380552731/10791611981 507779296875000000 +\n 6345738369828830304657/4150619992887 6074218750000*SQRT);\n aF5 := evalf(158752394088004083113707941/7 727699768576200000000000000 +\n 3583846237549473642123/1931 92494214405000000000000*SQRT);\n aF6 := evalf(1160644759100262780 858457646937/8626044866673183250000000000000 +\n 1642723348 5294486167930877/123229212381045475000000000000*SQRT);\n aF7 := e valf(656297759149621255662327/297516441090183700000000000 +\n \+ 755166281355508534317/11900657643607348000000000*SQRT);\n aF8 \+ := evalf(-1228747478142046557023820711/75545992937600931200000000000 + \n 4055509363768674605937/145280755649232560000000000*SQRT) ;\n aF9 := evalf(-26449889813931965961835861/19319249421440500000 00000000 +\n 1794096200068460594163/19319249421440500000000 0000*SQRT);\n aFB := evalf(201347553402524051240218527/1073233983 4309606220000000000-\n 31431277740965230477791/134154247928 8700777500000000*SQRT);\n aFC := evalf(-8974913400428577075069503 767310997/\n 747158802969757381 46964440000000000 -\n 1095208717369001411094866904411/14943 17605939514762939288800000000*SQRT);\n aFD := evalf(1712956800471 29728265877/594829247355851428960600 +\n 110108442809022418 8/2974146236779257144803*SQRT);\n aG1 := evalf(172544210917722105 598130227/3391576679450839385088000000 +\n 3176876199752450 173927/84789416986270984627200000*SQRT);\n aG4 := evalf(111019168 439769165365741/493330833440355625000000 -\n 56390339595529 9673/1897426282462906250000*SQRT);\n aG5 := evalf(784727498949117 5037051/353266275134912000000000 -\n 318472484391171747/883 1656878372800000000*SQRT);\n aG6 := evalf(60024459139515434197977 707/394333479619345520000000000 -\n 10218449841528261376771 /39433347961934552000000000*SQRT);\n aG7 := evalf(726807792494244 14721/1942964513242016000000 -\n 9586654983445059/777185805 29680640000*SQRT);\n aG8 := evalf(23094931095498698946279/3453531 105718899712000000 -\n 360386036939521593/66414059725363456 00000*SQRT);\n aG9 := evalf(-217984284848388029671/88316568783728 000000000 -\n 159429349419647307/8831656878372800000000*SQR T);\n aGB := evalf(-17239555749073841710163/103030462409372219712 00000 +\n 58654843252586650979/1287880780117152746400000*SQ RT);\n aGC := evalf(16748353122837812409131633846593/717272450850 96708621085862400000 +\n 2043801597108489464981675759/14345 44901701934172421717248000*SQRT);\n aGD := evalf(-800447534625311 50076875/214138529048106514425816-\n 19263435335939112500/2 6767316131013314303227*SQRT);\n end if;\n\n xstart := evalf(x0);\n xend:= evalf(xn);\n\n sgn := sign(xend-xstart);\n h := sgn*hstr t;\n\n eps := evalf(t);\n safety := 0.9;\n pgrow := -0.142857142 85714285714;\n pshrink := -0.16666666666666666667;\n errcontrol := 0.6122200345e-5; #(5/safety)^(1/pgrow)\n tiny := Float(1,-3*saveDi gits);\n \n xk := evalf(x0);\n yk := evalf(y0);\n \n if ymaxt emp<>0 then\n ymax := abs(evalf(ymaxtemp))\n else\n ymax : = max(abs(yk),tiny)\n end if;\n \n soln := NULL;\n finished := false;\n f1 := fn(xk,yk);\n\n for k from 1 to maxstps do\n i f errcntl=0 then yscale := max(abs(yk),abs(f1*h),tiny)\n elif err cntl=1 then yscale := max(abs(yk),tiny)\n elif errcntl=2 then ysc ale := abs(ymax)\n else yscale := max(abs(f1*h),tiny) end if;\n\n if abs(h)>=hmx then\n h := sgn*hmx;\n maxstepsiz e := true;\n else\n maxstepsize := false;\n end if; \n if abs(h)<=hmn then\n h := sgn*hmn;\n minsteps ize := true;\n else\n minstepsize := false;\n end if ;\n if (xk+h-xend)*(xk+h-xstart) > 0 then \n h := xend-xk ;\n laststep := true;\n else\n laststep := false; \n end if;\n\n # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a32*f2;\n \+ f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54 *f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + \+ a63*f3 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n \+ t := a71*f1 + a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 : = fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 + a 85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n \+ t := a91*f1 + a93*f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f 8;\n f9 := fn(xk + h,yk + t*h);\n\n yout := yk + (b1*f 1 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9)*h;\n\n # er ror estimate\n t := aA1*f1 + aA3*f3 + aA4*f4 + aA5*f5 + aA6*f 6 + aA7*f7;\n fA := fn(xk + h,yk + t*h);\n\n yerr := ( e1*f1 + e4*f4 + e5*f5 + e6*f6 + e7*f7 + e8*f8 + e9*f9 + eA*fA)*h;\n \+ \n err := abs(yerr/yscale)/eps;\n if err<=1.0 o r minstepsize then break end if;\n\n # Shrink, but not too muc h.\n if prntflg then\n print(`reducing step-size an d repeating step`);\n end if;\n htemp := safety*h*err^ pshrink;\n if h>=0 then\n h := max(htemp,0.1*h)\n \+ else\n h := min(htemp,0.1*h)\n end if;\n \+ if maxstepsize then maxstepsize := false end if;\n if abs (h)<=hmn then\n h := sgn*hmn;\n minstepsize := t rue;\n end if;\n end do;\n\n if outpt='points' or ou tpt='rkstep' then\n soln := soln,[xk,yk];\n else # extra \+ stages needed for interpolation\n t := aB1*f1 + aB4*f4 + aB5*f 5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9;\n fB := fn(xk + h,yk + \+ t*h); \n t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8 *f8 + aC9*f9\n \+ + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n \+ t := aD1*f1 + aD4*f4 + aD5*f5 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9\n \+ + aDB*fB + aDC*f C;\n fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 + aE4 *f4 + aE5*f5 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9\n \+ + aEB*fB + aEC*fC + aED*fD;\n fE : = fn(xk + cE*h,yk + t*h);\n t := aF1*f1 + aF4*f4 + aF5*f5 + aF 6*f6 + aF7*f7 + aF8*f8 + aF9*f9\n \+ + aFB*fB + aFC*fC + aFD*fD;\n fF := fn(xk + cF*h,yk + t*h);\n t := aG1*f1 + aG4*f4 + aG5*f5 + aG6*f6 + aG7*f7 + a G8*f8 + aG9*f9\n + aGB* fB + aGC*fC + aGD*fD;\n fG := fn(xk + cG*h,yk + t*h);\n \+ soln := soln,[xk,yk,f1,f4,f5,f6,f7,f8,f9,fB,fC,fD,fE,fF,fG];\n \+ end if;\n \n if err>errcontrol then\n hnext := safet y*h*err^pgrow;\n inc := false;\n else\n hnext := \+ 5*h;\n inc := true;\n end if;\n\n xk := xk + h;\n \+ yk := yout;\n f1 := fn(xk,yk);\n if prntflg then\n \+ print(`abs err estimate -> `,evalf(abs(yerr),5),`abs err bound -> `, evalf(abs(yscale)*eps,5));\n print('step',k,` `,h,` `,[xk, yk]);\n if laststep then\n print(`last step`);\n \+ elif inc then\n print(`increasing step-size by a fact or of 5`)\n elif maxstepsize then\n print(`used max imum step-size`)\n elif not minstepsize then\n prin t(`using error to adjust step-size`)\n else \n prin t(`used minimum step-size`)\n end if;\n print(``);\n \+ end if;\n\n if (xk-xend)*(xend-xstart)>=0 then\n fini shed := true;\n break;\n end if;\n\n if abs(yk)>ymax then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n if \+ not finished and k>=maxstps then\n error \"reached maximum number of steps before reaching end of interval\"\n end if;\n\n soln := \+ soln,[xk,yk];\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln] ,FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n c4_=c4,c5_=c5,c6_=c6,c7_= c7,c8_=c8,c9_=c9,a41_=a41,\n a51_=a51,a53_=a53,a54_=a54,a61_=a 61,a63_=a63,a64_=a64,\n a65_=a65,a71_=a71,a73_=a73,a74_=a74,a7 5_=a75,a76_=a76,\n a81_=a81,a83_=a83,a84_=a84,a85_=a85,a86_=a8 6,a87_=a87,\n a91_=a91,a93_=a93,a94_=a94,a95_=a95,a96_=a96,a97 _=a97,\n a98_=a98,b1_=b1,b4_=b4,b5_=b5,b6_=b6,b7_=b7,b8_=b8,\n b9_=b9\};\n return subs(eqns,eval(rk67step));\n elif o utpt='rkinterp' then\n SQRT := evalf[Digits+3](sqrt(90853)); \n \+ d12 := evalf(-1245492445607086572225081867133090468655067965932222 387/\n 18536661357004623541974832014924538157850472871737 5840 +\n 5676366304768522010210593942009978778013515749/ \n 6201626415859693389754042159559899015674296711856*SQRT );\n d13 := evalf(61927260538653948427634353640331670106102743949 63286001/\n 259513258998064729587647648208943534209906620 204326176-\n 22468227311053240883717476489332296623107626 8109837/\n 4634165339251155885493708003731134539462618217 9343960*SQRT);\n d14 := evalf(-3603363837756473795984288621512936 9079092076099666664271/\n 7414664542801849416789932805969 81526314018914869503360+\n 697002481870568605760085346182 9325865779670811050531/\n 6487831474951618239691191205223 58835524766550510815440*SQRT);\n d15 := evalf(1847151942139300993 1491942508354367069752503925063167621/\n 3243915737475809 11984559560261179417762383275255407720-\n 673287630592227 61276241780523037919254937089737629/\n 579270667406394485 6867135004663918174328272772417995*SQRT);\n d16 := evalf(-1500146 1228970908131092923220274158140637555553525125/\n 4212877 58113741444135791636702830412678419837994036+\n 430069370 2808932497120998703956514517497439695250/\n 7372535766990 47527237635364229953222187234716489563*SQRT);\n d17 := evalf(7435 7607912502959886982099899826543150485520824221250/\n 8109 789343689522799613989006529485444059581881385193-\n 82761 88149631282481324843493345801090640998610000/\n 810978934 3689522799613989006529485444059581881385193*SQRT);\n d42 := evalf (1030484186012736659906682306185879664010577739584/\n 962 21238834312592026877197081263671772079653125-\n 390410094 670758467158067206228065646634145664/\n 19244247766862518 405375439416252734354415930625*SQRT);\n d43 := evalf(-14040492752 991105957745181536605742675826055603904/\n 21168672543548 7702459129833578780077898575236875+\n 1034007085434093447 4776184767726915029408555776/\n 9622123883431259202687719 7081263671772079653125*SQRT);\n d44 := evalf(19047467002917703870 7050892899545193058401433877808/\n 1058433627177438512295 649167893900389492876184375-\n 16038325917789812508002166 8421251314614943766144/\n 6735486718401881441881403795688 45702404557571875*SQRT);\n d45 := evalf(-268272811583799405050526 324644033445272252559656704/\n 10584336271774385122956491 67893900389492876184375+\n 247882192370381849699398637525 18812512962779136/\n 962212388343125920268771970812636717 72079653125*SQRT);\n d46 := evalf(3059180923776612396368205406153 87742339826576896/\n 169349380348390161967303866863024062 3188601895-\n 1393368146224058366082631994847225023985786 88/\n 1077677874944301030701024607310153123847292115*SQRT );\n d47 := evalf(-1215330334116334065169338442792706534776110325 76/\n 2370891324877462267542254136082336872464042653+\n \+ 4875229117031834623265977816148826703888384/\n \+ 215535574988860206140204921462030624769458423*SQRT);\n d52 := e valf(38874238489059856872960010130592130908010593477/\n 2 3685228020753868806615925435387980743896530000-\n 7363963 142166995237151335821316868900409671/\n 23685228020753868 80661592543538798074389653000*SQRT);\n d53 := evalf(9751784302987 3091519009069373133624672649307/\n 5921307005188467201653 981358846995185974132500*SQRT-\n 481515451396788743671209 44853209025621358693017/\n 473704560415077376132318508707 7596148779306000);\n d54 := evalf(2612913900737986966590012577679 956099582506949761/\n 94740912083015475226463701741551922 975586120000-\n 30251687272652861176450991913975771706535 85141/\n 82898298072638540823155739023857932603637855000* SQRT);\n d55 := evalf(5844480435868459219300718628095222450946523 8/\n 1480326751297116800413495339711748796493533125*SQRT- \n 230008850543617126539432426692774778520208568573/\n \+ 5921307005188467201653981358846995185974132500);\n d56 := evalf(131142377740173337114582208861075368648359501/\n \+ 4737045604150773761323185087077596148779306-\n 32852351 3234096986248906281087789711439204/\n 1657965961452770816 4631147804771586520727571*SQRT);\n d57 := evalf(57473231381411087 623079589525084164283360/\n 16579659614527708164631147804 771586520727571*SQRT-\n 130248352195378114747793615711977 046612476140/\n 16579659614527708164631147804771586520727 571);\n d62 := evalf(49996942234782978601949169607895889367429710 815381/\n 40674824274102317008284656565002820777499233250 00-\n 9470941532182236108083986705130470199924727863/\n \+ 406748242741023170082846565650028207774992332500*SQRT);\n \+ d63 := evalf(125419664907321797762263961399378027650563743371/\n \+ 1016870606852557925207116414125070519437480831250*SQRT-\n 61928673446338462005086245858239542699281836313001/\n \+ 813496485482046340165693131300056415549984665000);\n d 64 := evalf(3360521271597980850578036775928273706653274923439633/\n \+ 16269929709640926803313862626001128310999693300000-\n \+ 3890730519393186362969470712211710116041902648773/\n \+ 14236188495935810952899629797750987272124731637500*SQRT);\n d 65 := evalf(150334083496796172533193084895058207211461442028/\n \+ 508435303426278962603558207062535259718740415625*SQRT-\n \+ 295819022084621912852297173475226628279869278088269/\n \+ 1016870606852557925207116414125070519437480831250);\n d66 := evalf(168664857222933206806474670122706725038694237853/\n \+ 813496485482046340165693131300056415549984665-\n 845041 433727662371488993912982186607664350024/\n 56944753983743 24381159851919100394908849892655*SQRT);\n d67 := evalf(2956699285 8073804469903455415505672253706432/\n 1138895079674864876 231970383820078981769978531*SQRT-\n 670060131747211129941 57522457885661218493934968/\n 113889507967486487623197038 3820078981769978531);\n d72 := evalf(3886334222488465556766066601 86242923213784313/\n 473704560415077376132318508707759614 87793060-\n 73618990583188684516041570856853683298499/\n \+ 4737045604150773761323185087077596148779306*SQRT);\n \+ d73 := evalf(-5295185333962630583023577697115483804198746303/\n \+ 104215003291317022749110071915707115273144732+\n \+ 6824335646956455717811622251749704277288081/\n 8289829807 2638540823155739023857932603637855*SQRT);\n d74 := evalf(28733996 6473756017908665309159049643016781339799/\n 2084300065826 340454982201438314142305462894640-\n 21170245508004291339 9624338443126721556529503/\n 1160576173016939571524180346 334011056450929970*SQRT);\n d75 := evalf(-17705717272062613337927 5321267100009364477099549/\n 9118812787990239490547131292 62437258640016405+\n 163599583162308734196252947862966331 52420616/\n 82898298072638540823155739023857932603637855* SQRT);\n d76 := evalf(3605404526772494108751360829428331049685114 750/\n 26053750822829255687277517978926778818286183-\n \+ 11495100037949109721593516048526324108566000/\n \+ 116057617301693957152418034633401105645092997*SQRT);\n d77 := e valf(-50131560017645533374150780148135050314873910000/\n \+ 1276633790318633528676598380967412162096022967+\n 2010999 266779263039787284525567039103440000/\n 11605761730169395 7152418034633401105645092997*SQRT);\n d82 := evalf(98751752593431 9097974257523533243267886225939333/\n 2315467891308898214 53477287056352899752332477280-\n 187065855071882447355261 631547265209261485959/\n 23154678913088982145347728705635 289975233247728*SQRT);\n d83 := evalf(-12231878121453676646784464 48033676758769910395993/\n 463093578261779642906954574112 70579950466495456+\n 247723383984519342556561887738514265 2655573403/\n 5788669728272245536336932176408822493808311 9320*SQRT);\n d84 := evalf(66375532255437640136901686415740467536 876489493569/\n 92618715652355928581390914822541159900932 9909120-\n 7684799119405557756406363485485499992502020958 9/\n 810413761958114375087170504697235149133163670480*SQR T);\n d85 := evalf(-584288669978066240151608560181430030902774428 5117/\n 57886697282722455363369321764088224938083119320+ \n 742333108598975881415497750928209729291085451/\n \+ 7235837160340306920421165220511028117260389915*SQRT);\n d 86 := evalf(416424222842223069560782175798972236238630753625/\n \+ 5788669728272245536336932176408822493808311932-\n \+ 521590164221940853617305790701881956426182250/\n 10130172 024476429688589631308715439364164545881*SQRT);\n d87 := evalf(-20 6792685072787825168371968111057082548854878750/\n 1013017 2024476429688589631308715439364164545881+\n 9124909173010 9060430348035347604399318590000/\n 1013017202447642968858 9631308715439364164545881*SQRT);\n d92 := evalf(61600078948691438 535436498866675033975470023823/\n 35527842031130803209923 888153081971115844795000-\n 11668928538893450752821474588 161849014318229/\n 35527842031130803209923888153081971115 84479500*SQRT);\n d93 := evalf(-763008896737730524543747026490898 14913461270283/\n 710556840622616064198477763061639422316 8959000+\n 154526675326047235615120419814022293079734993/ \n 8881960507782700802480972038270492778961198750*SQRT); \n d94 := evalf(4140420721473170394434000745926645063740252819139 /\n 142111368124523212839695552612327884463379180000-\n \+ 4793679302170705180291874471420567928024745759/\n \+ 124347447108957811234733608535786898905456782500*SQRT);\n d9 5 := evalf(-364471791682091940189183224498249828899461859127/\n \+ 8881960507782700802480972038270492778961198750+\n \+ 185223155620089139233580461930627700057441924/\n 44409802 53891350401240486019135246389480599375*SQRT);\n d96 := evalf(2078 08078982363665286549532666350977178735399/\n 710556840622 6160641984777630616394223168959-\n 1041156052866067027563 147164204148901640792/\n 49738978843583124493893443414314 759562182713*SQRT);\n d97 := evalf(-41278281401860572790041493878 9836129072419720/\n 4973897884358312449389344341431475956 2182713+\n 182144048507994531358622072425086877161280/\n \+ 49738978843583124493893443414314759562182713*SQRT);\n \+ dB2 := evalf(-56456033572533099803485359843689829294849835411003601/ \n 17861551305194328459171835019657548265440518078422271+ \n 1424032765927712023780299286557199391711618405510/\n \+ 266590317987975051629430373427724600976724150424213*SQRT); \n dB3 := evalf(1195899351048129091443514166119525885053125056524 40033/\n 595385043506477615305727833988584942181350602614 0757-\n 7543144964534395189741558797930488133717249785068 /\n 266590317987975051629430373427724600976724150424213*S QRT);\n dB4 := evalf(-1003855881122743285477194596323330545077681 204327771666/\n 17861551305194328459171835019657548265440 518078422271+\n 16714367005597800975160663279434229819461 730073606/\n 26659031798797505162943037342772460097672415 0424213*SQRT);\n dB5 := evalf(14667014022877264049898895640260436 05393485683669975168/\n 178615513051943284591718350196575 48265440518078422271-\n 180831576254761745665401678579703 53794914333214048/\n 266590317987975051629430373427724600 976724150424213*SQRT);\n dB6 := evalf(-36416525530250223090738579 1408911679802956387736440000/\n 5953850435064776153057278 339885849421813506026140757+\n 53386060368576275574488733 1563174923985551960000/\n 1568178341105735597820178667221 9094175101420613189*SQRT);\n dB7 := evalf(32733647300061794557989 3516531854042871977002320800000/\n 1786155130519432845917 1835019657548265440518078422271-\n 1587727444172910090322 320546664560990296148800000/\n 26659031798797505162943037 3427724600976724150424213*SQRT);\n dC2 := evalf(11352303236073275 82930999838580422891731542256382488105/\n 291457742976870 051344267267922881921818948292009982364+\n 59066244383911 681051255770329712958815574758756930765/\n 14572887148843 5025672133633961440960909474146004991182*SQRT);\n dC3 := evalf(-3 006674812544326620349663912731736074211477170882749457/\n \+ 145728871488435025672133633961440960909474146004991182-\n \+ 156437848397470984648344464490883899812694876944585301/\n \+ 72864435744217512836066816980720480454737073002495591*SQRT);\n \+ dC4 := evalf(13324592466308207367606604383798620669469582473836593513 /\n 29145774297687005134426726792288192181894829200998236 4+\n 6932810184545611044349992293410993689650701936061289 09/\n 145728871488435025672133633961440960909474146004991 182*SQRT);\n dC5 := evalf(-37502796041470853712561666940000869405 0450791797834536/\n 7286443574421751283606681698072048045 4737073002495591*SQRT-\n 36039460211503516330456594584278 44910607167834397260676/\n 728644357442175128360668169807 20480454737073002495591);\n dC6 := evalf(164432673922640136583813 059658606168442788666791315000/\n 66240396131106829850969 83361883680041339733909317781+\n 171109250706981957785429 93357056503351376264006590000/\n 662403961311068298509698 3361883680041339733909317781*SQRT);\n dC7 := evalf(-3164316832054 10296835853297045715795458050097420600000/\n 728644357442 17512836066816980720480454737073002495591-\n 329279983847 37024533139292872135106892315711511600000/\n 728644357442 17512836066816980720480454737073002495591*SQRT);\n dD2 := evalf(- 36973941277404807553093649179718938285760000000000000/\n \+ 284771207968754616793185268225185417780450548776251+\n 58 043815619384227481546325677386120000000000000/\n 46753481 905317922160075193290702083516193373679683*SQRT);\n dD3 := evalf( 195852093883494425825008126285129714960768000000000000/\n \+ 284771207968754616793185268225185417780450548776251-\n 3 07459860466403526034884323376956816000000000000/\n 467534 81905317922160075193290702083516193373679683*SQRT);\n dD4 := eval f(-433975986325961246403245484155164053784256000000000000/\n \+ 284771207968754616793185268225185417780450548776251+\n \+ 681280417052486840321147312190395272000000000000/\n 467 53481905317922160075193290702083516193373679683*SQRT);\n dD5 := e valf(469515606769648844859076505274862984629248000000000000/\n \+ 284771207968754616793185268225185417780450548776251-\n \+ 737072553485530165777879848345064576000000000000/\n 4 6753481905317922160075193290702083516193373679683*SQRT);\n dD6 := evalf(-235641923708367616042980817326157976320000000000000000/\n \+ 284771207968754616793185268225185417780450548776251+\n \+ 33629474507481161574920311385440000000000000000/\n \+ 4250316536847083832734108480972916683290306698153*SQRT);\n dD7 : = evalf(41224150658590399315235319101048268800000000000000000/\n \+ 284771207968754616793185268225185417780450548776251-\n \+ 64716038302230153314052891385600000000000000000/\n \+ 46753481905317922160075193290702083516193373679683*SQRT);\n dE2 : = evalf(-413250732284251416811693521464553882942612500000/\n \+ 17756815447159175444319959298910369163699228541+\n 10 5132434254010817990034583829762376625000000/\n 3623839887 17534192741223659161436105381616909*SQRT);\n dE3 := evalf(1234770 6616230164816753008131857399054272937500000/\n 3728931243 90342684330719145277117752437683799361-\n 272875957213328 84898403388614659457906450000000/\n 177568154471591754443 19959298910369163699228541*SQRT);\n dE4 := evalf(4232537280031228 52990728081422253818643175000000/\n 124297708130114228110 239715092372584145894599787*SQRT+\n 362200664766610305901 409376896326482752162500000/\n 19729794941287972715911065 88767818795966580949);\n dE5 := evalf(-79427487619602479485898055 13429584907086362500000/\n 138108564589015809011377461213 74731571766066643-\n 654164671326305358292163762660571059 97200000000/\n 177568154471591754443199592989103691636992 28541*SQRT);\n dE6 := evalf(3107730809258729789656659546447557582 2010000000000/\n 5327044634147752633295987789673110749109 7685623+\n 1351881831171477452583709372943884550000000000 0/\n 7311629890006719300602336181904269655640858811*SQRT) ;\n dE7 := evalf(-25070768984778207847705078601079237005125000000 000/\n 124297708130114228110239715092372584145894599787- \n 40205624273655785407202182911306740000000000000/\n \+ 124297708130114228110239715092372584145894599787*SQRT);\n \+ dF2 := evalf(42268513936247399949328391813294358809271012500000/\n \+ 659261742298069410523989653346219672419839184979-\n \+ 3475580372113118510881164788100647319125000000/\n \+ 10807569545869990336458846776167535613439986639*SQRT);\n dF3 := \+ evalf(1123025565008874140379109232326967279108050000000/\n \+ 659261742298069410523989653346219672419839184979*SQRT-\n \+ 185612783596395059692053224236518788380415187500000/\n \+ 659261742298069410523989653346219672419839184979);\n dF4 := evalf (289931163366790681847885836863676693606149837500000/\n 6 59261742298069410523989653346219672419839184979-\n 248843 9707639343205961834335539239033316225000000/\n 6592617422 98069410523989653346219672419839184979*SQRT);\n dF5 := evalf(-116 485456126822054815821533996110224177763162500000/\n 65926 1742298069410523989653346219672419839184979+\n 2692225643 942456702608813575242748555174800000000/\n 65926174229806 9410523989653346219672419839184979*SQRT);\n dF6 := evalf(-1057140 13142384696890443504719206272987617500000000/\n 659261742 298069410523989653346219672419839184979-\n 13511824115078 79203029805812804951694500000000000/\n 659261742298069410 523989653346219672419839184979*SQRT);\n dF7 := evalf(756125755625 63729601104034274864233130375000000000/\n 659261742298069 410523989653346219672419839184979+\n 23638131289479179516 7468392848614380000000000000/\n 6592617422980694105239896 53346219672419839184979*SQRT);\n dG2 := evalf(2022259167735948990 51143979322023883211647432000/\n 360252318195666344548628 2258722511871146662213-\n 1108694301447614594026993238833 729947327760000/\n 36025231819566634454862822587225118711 46662213*SQRT);\n dG3 := evalf(-391981914805358152828798318931481 71202666084920000/\n 176523635915876508828827830677403081 686186448437+\n 41109512548378815407008975035344376674564 576000/\n 25217662273696644118403975811057583098026635491 *SQRT);\n dG4 := evalf(110568869921931111401233522989563992325525 5864000/\n 3602523181956663445486282258722511871146662213 -\n 637643368077669091381996841275365128060003344000/\n \+ 176523635915876508828827830677403081686186448437*SQRT);\n \+ dG5 := evalf(98551704735096657302270777665202801691655936000/\n \+ 25217662273696644118403975811057583098026635491*SQRT-\n \+ 11860073990354471424207143791273473130800116584000/\n \+ 176523635915876508828827830677403081686186448437);\n dG6 \+ := evalf(-4509810641702468578201419796202184147587380000000/\n \+ 25217662273696644118403975811057583098026635491-\n \+ 346230009558287183945438320962122549295680000000/\n 17652 3635915876508828827830677403081686186448437*SQRT);\n dG7 := evalf (18539123779155172114386433006171406849699600000000/\n 17 6523635915876508828827830677403081686186448437+\n 6057087 7422561081469799562036510196211200000000/\n 1765236359158 76508828827830677403081686186448437*SQRT);\n eqns := \{SOLN_=[sol n],\n d12_=d12,d13_=d13,d14_=d14,d15_=d15,d16_=d16,d17_=d17,\n \+ d42_=d42,d43_=d43,d44_=d44,d45_=d45,d46_=d46,d47_=d47,\n \+ d52_=d52,d53_=d53,d54_=d54,d55_=d55,d56_=d56,d57_=d57,\n d62_= d62,d63_=d63,d64_=d64,d65_=d65,d66_=d66,d67_=d67,\n d72_=d72,d7 3_=d73,d74_=d74,d75_=d75,d76_=d76,d77_=d77,\n d82_=d82,d83_=d83 ,d84_=d84,d85_=d85,d86_=d86,d87_=d87,\n d92_=d92,d93_=d93,d94_= d94,d95_=d95,d96_=d96,d97_=d97,\n dB2_=dB2,dB3_=dB3,dB4_=dB4,dB 5_=dB5,dB6_=dB6,dB7_=dB7,\n dC2_=dC2,dC3_=dC3,dC4_=dC4,dC5_=dC5 ,dC6_=dC6,dC7_=dC7,\n dD2_=dD2,dD3_=dD3,dD4_=dD4,dD5_=dD5,dD6_= dD6,dD7_=dD7,\n dE2_=dE2,dE3_=dE3,dE4_=dE4,dE5_=dE5,dE6_=dE6,dE 7_=dE7,\n dF2_=dF2,dF3_=dF3,dF4_=dF4,dF5_=dF5,dF6_=dF6,dF7_=dF7 ,\n dG2_=dG2,dG3_=dG3,dG4_=dG4,dG5_=dG5,dG6_=dG6,dG7_=dG7\};\n \+ return subs(eqns,eval(rk67interp));\n else \n return evalf [saveDigits]([soln]);\n end if;\nend proc: # of rungk67" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 25 "rungk67b : implementation " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65082 "rungk67b := proc(fxy,eqn1,eqn2) \n loca l ytemp,fn,soln,xk,yk,k,xend,xstart,h,safety,errcontrol,\n c2,c3,c4, c5,c6,c7,c8,cC,cD,cE,cF,cG,a21,a31,a32,a41,a43,a51,a53,\n a54,a61,a6 3,a64,a65,a71,a73,a74,a75,a76,a81,a83,a84,a85,a86,\n a87,a91,a93,a94 ,a95,a96,a97,a98,aA1,aA3,aA4,aA5,aA6,aA7,aB1,\n aB3,aB4,aB5,aB6,aB7, aB8,aB9,aC1,aC3,aC4,aC5,aC6,aC7,aC8,aC9,\n aCB,aD1,aD3,aD4,aD5,aD6,a D7,aD8,aD9,aDB,aDC,aE1,aE3,aE4,aE5,\n aE6,aE7,aE8,aE9,aEB,aEC,aED,aF 1,aF3,aF4,aF5,aF6,aF7,aF8,aF9,\n aFB,aFC,aFD,aG1,aG3,aG4,aG5,aG6,aG7 ,aG8,aG9,aGB,aGC,aGD,f1,\n f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC,fD,fE,fF ,fG,b1,b4,b5,b6,b7,\n b8,b9,e1,e4,e5,e6,e7,e8,e9,eA,d12,d13,d14,d15, d16,d17,d42,\n d43,d44,d45,d46,d47,d52,d53,d54,d55,d56,d57,d62,d63,d 64,d65,\n d66,d67,d72,d73,d74,d75,d76,d77,d82,d83,d84,d85,d86,d87,d9 2,\n d93,d94,d95,d96,d97,dB2,dB3,dB4,dB5,dB6,dB7,dC2,dC3,dC4,dC5,\n \+ dC6,dC7,dD2,dD3,dD4,dD5,dD6,dD7,dE2,dE3,dE4,dE5,dE6,dE7,dF2,\n dF3 ,dF4,dF5,dF6,dF7,dG2,dG3,dG4,dG5,dG6,dG7,yout,SQRT,yerr,\n rs,eqns,m axstps,tiny,yscale,err,htemp,hnext,saveDigits,eps,\n pgrow,pshrink,O ptions,j,prntflg,t,tt,errcntl,ymax,ymaxtemp,\n x,y,errc,x0,y0,xn,f,o utpt,hmx,hmn,hstrt,temp,sgn,finished,\n maxstepsize,laststep,minstep size,ftd,inc,rk67step,rk67interp;\n\nrk67interp := proc(x_rk67interp:: realcons)\n local d12,d13,d14,d15,d16,d17,d42,d43,d44,d45,d46,d47,d5 2,d53,d54,\n d55,d56,d57,d62,d63,d64,d65,d66,d67,d72,d73,d74,d75,d76 ,d77,d82,\n d83,d84,d85,d86,d87,dB2,dB3,dB4,dB5,dB6,dB7,dC2,dC3,dC4, dC5,dC6,\n dC7,dD2,dD3,dD4,dD5,dD6,dD7,dE2,dE3,dE4,dE5,dE6,dE7,dF2,d F3,dF4,\n dF5,dF6,dF7,dG2,dG3,dG4,dG5,dG6,dG7,s,b1,b4,b5,b6,b7,b8,b9 ,bB,bC,\n bD,bE,bF,bG,xF,xS,yF,f1,f4,f5,f6,f7,f8,f9,fB,fC,fD,fE,fF,f G,t,jF,\n jM,jS,n,h,data,xx,ys,saveDigits;\n options `Copyright 20 07 by Peter Stone`;\n \n data := SOLN_;\n saveDigits := Digits; \n Digits := max(trunc(evalhf(Digits)),Digits+5);\n xx := evalf(x_ rk67interp);\n n := nops(data);\n if (data[1,1] data[n,1] or xxdata[1,1])) then\n error \"independent variable is o utside the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n ,1]);\n end if;\n\n d12 := d12_; d13 := d13_; d14 := d14_; d15 := \+ d15_; d16 := d16_; d17 := d17_;\n d42 := d42_; d43 := d43_; d44 := d 44_; d45 := d45_; d46 := d46_; d47 := d47_;\n d52 := d52_; d53 := d5 3_; d54 := d54_; d55 := d55_; d56 := d56_; d57 := d57_;\n d62 := d62 _; d63 := d63_; d64 := d64_; d65 := d65_; d66 := d66_; d67 := d67_;\n \+ d72 := d72_; d73 := d73_; d74 := d74_; d75 := d75_; d76 := d76_; d77 := d77_;\n d82 := d82_; d83 := d83_; d84 := d84_; d85 := d85_; d86 \+ := d86_; d87 := d87_;\n d92 := d92_; d93 := d93_; d94 := d94_; d95 : = d95_; d96 := d96_; d97 := d97_;\n dB2 := dB2_; dB3 := dB3_; dB4 := dB4_; dB5 := dB5_; dB6 := dB6_; dB7 := dB7_;\n dC2 := dC2_; dC3 := \+ dC3_; dC4 := dC4_; dC5 := dC5_; dC6 := dC6_; dC7 := dC7_;\n dD2 := d D2_; dD3 := dD3_; dD4 := dD4_; dD5 := dD5_; dD6 := dD6_; dD7 := dD7_; \n dE2 := dE2_; dE3 := dE3_; dE4 := dE4_; dE5 := dE5_; dE6 := dE6_; \+ dE7 := dE7_;\n dF2 := dF2_; dF3 := dF3_; dF4 := dF4_; dF5 := dF5_; d F6 := dF6_; dF7 := dF7_;\n dG2 := dG2_; dG3 := dG3_; dG4 := dG4_; dG 5 := dG5_; dG6 := dG6_; dG7 := dG7_;\n\n # Perform a binary search f or the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n \+ jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM := trunc ((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM en d if;\n end do;\n if jM = n then jF := n-1; jS := n end if; \n end if;\n \n # Get the data needed from the list.\n xF := da ta[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 := data[j F,3];\n f4 := data[jF,4];\n f5 := data[jF,5];\n f6 := data[jF,6] ;\n f7 := data[jF,7];\n f8 := data[jF,8];\n f9 := data[jF,9];\n \+ fB := data[jF,10];\n fC := data[jF,11];\n fD := data[jF,12];\n \+ fE := data[jF,13];\n fF := data[jF,14];\n fG := data[jF,15];\n\n \+ # Calculate the parameters.\n h := xx-xF;\n s := h/(xS-xF);\n \+ b1 := (((((d17*s+d16)*s+d15)*s+d14)*s+d13)*s+d12)*s+1;\n b4 := ((((( d47*s+d46)*s+d45)*s+d44)*s+d43)*s+d42)*s;\n b5 := (((((d57*s+d56)*s+ d55)*s+d54)*s+d53)*s+d52)*s;\n b6 := (((((d67*s+d66)*s+d65)*s+d64)*s +d63)*s+d62)*s;\n b7 := (((((d77*s+d76)*s+d75)*s+d74)*s+d73)*s+d72)* s;\n b8 := (((((d87*s+d86)*s+d85)*s+d84)*s+d83)*s+d82)*s;\n b9 := \+ (((((d97*s+d96)*s+d95)*s+d94)*s+d93)*s+d92)*s;\n bB := (((((dB7*s+dB 6)*s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := (((((dC7*s+dC6)*s+dC5)*s+d C4)*s+dC3)*s+dC2)*s; \n bD := (((((dD7*s+dD6)*s+dD5)*s+dD4)*s+dD3)*s +dD2)*s;\n bE := (((((dE7*s+dE6)*s+dE5)*s+dE4)*s+dE3)*s+dE2)*s;\n \+ bF := (((((dF7*s+dF6)*s+dF5)*s+dF4)*s+dF3)*s+dF2)*s;\n bG := (((((dG 7*s+dG6)*s+dG5)*s+dG4)*s+dG3)*s+dG2)*s;\n\n # Calculate the interpol ated y value.\n t := b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bB*fB\n + bC*fC + bD*fD + bE*fE \+ + bF*fF + bG*fG;\n ys := yF + t*h;\n Digits := saveDigits;\n eva lf(ys);\nend proc: # of rk67interp\n\nrk67step := proc(x_rk67step::rea lcons)\n local c2,c3,c4,c5,c6,c7,c9,a21,a32,a41,a43,a51,a53,a54,a61, \n a63,a64,a65,a71,a73,a74,a75,a76,a81,a83,a84,a85,a86,a87,aA1,\n \+ a93,a94,a95,a96,a97,a98,f1,f2,f3,f4,f5,f6,f7,f8,f9,b1,b4,b5,\n b6,b7 ,b8,b9,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Cop yright 2007 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits \+ := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # \+ procedure to evaluate the slope field\n fn := proc(X_,Y_)\n loc al val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n error \"evaluation of slope f ield failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n v al;\n end proc;\n\n xx := evalf(x_rk67step);\n n := nops(data );\n\n if (data[1,1]data[n,1] or xxdata[1,1])) then \n error \"independent variable is outside the interpolation inte rval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7_;\n c8 := c8_; a21 := c2; a31 := a31_; a32 := a32_; a41 := a41_; \n a43 := 0. 1225; a51 := a51_; a53 := a53_; a54 := a54_; a61 := a61_;\n a63 := a 63_; a64 := a64_; a65 := a65_; a71 := a71_; a73 := a73_;\n a74 := a7 4_; a75 := a75_; a76 := a76_; a81 := a81_; a83 := a83_;\n a84 := a84 _; a85 := a85_; a86 := a86_; a87 := a87_; a91 := a91_;\n a93 := a93_ ; a94 := a94_; a95 := a95_; a96 := a96_; a97 := a97_;\n a98 := a98_; b1 := b1_; b4 := b4_; b5 := b5_; b6 := b6_; b7 := b7_;\n b8 := b8_; b9 := b9_;\n\n # Perform a binary search for the interval containin g x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1, 1]1 do\n jM := trunc((jF+jS) /2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n else \n while jS-jF> 1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Ge t the data needed from the list.\n xk := data[jF,1];\n yk := data[ jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t : = a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + \+ a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a63*f3 + \+ a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + \+ a73*f3 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 : = fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a93*f3 + a94*f4 + a95*f5 \+ + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + h,yk + t*h);\n ys := y k + (b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + b9*f9)*h;\n Dig its := saveDigits;\n evalf(ys);\nend proc: # of rk67step\n\n # sta rt of main procedure rungk67\n x := lhs(eqn1);\n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs);\n y0 := rh s(eqn2);\n\n # Get the options.\n # Set the default values to star t with.\n maxstps := 2000;\n t := Float(1,-Digits);\n hmx := 0.5 ;\n hstrt := evalf(0.1*10^(-ceil(Digits/10)));\n hmn := min(0.0000 05,hstrt/2000);\n errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rki nterp';\n prntflg := false;\n Options := [];\n if nargs > 3 then \n Options:=[args[4..nargs]];\n if not type(Options,list(equ ation)) then\n error \"each optional argument must be an equat ion\"\n end if;\n if hasoption(Options,'maxsteps','maxstps', 'Options') then\n if not type(maxstps,posint) then\n \+ error \"\\\"maxsteps\\\" must be a positive integer\"\n end \+ if;\n end if;\n if hasoption(Options,'tolerance','t','Option s') then \n tt := evalf(t); \n if not type(tt,float) o r \n tt>Float(1,-iquo(Digits,2)) or tthmx) or evalf(hstrttrue then prntflg := false end if; \n end if;\n \+ if nops(Options)>0 then\n error \"%1 is not a valid option f or %2\",op(1,Options), procname;\n end if;\n end if;\n\n if p rntflg then\n print(`method: Verner \"most robust\" 10 stage, ord er 6-7`);\n print(`an embedded order 6 scheme provides error cont rol`);\n if outpt='rkinterp' then\n print(`6 extra stages are used to construct the interpolation procedure`);\n end if;\n print(``);\n end if;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate th e slope field\n fn := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\},\n pro c(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \"ev aluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc);\n \n ## coefficients by Jim Verner\n # nodes \n c2 := evalf(1/200);\n c3 := evalf(49/450); \n c4 := evalf(49/300);\n c5 := evalf(91/200);\n c6 := evalf(347 04460/57271701);\n c7 := evalf(167/200);\n c8 := evalf(183/200);\n \n # linking coefficients\n a21 := c2;\n a31 := evalf(-4361/4050 );\n a32 := evalf(2401/2025); \n a41 := evalf(49/1200);\n a43 \+ := 0.1225;\n a51 := evalf(1781/2800);\n a53 := evalf(-13689/5600); \n a54 := evalf(507/224);\n a61 := evalf(-275776923568321554889485 313326460/108782544039075797415588764982099);\n a63 := evalf(9576001 512158705648097438730000/929765333667314507825544999847);\n a64 := e valf(-22178538465642954902290458689600/2789296001001943523476634999541 );\n a65 := evalf(12323686750109283453854913779200/15540363434153685 345084109283157);\n a71 := evalf(8221508014471276464993/820610858494 5090400000);\n a73 := evalf(-9852144759099/2364568872400);\n a74 : = evalf(15322550932778398907299/3996134347464283007200);\n a75 := ev alf(-18338463121898520004/36506562121215938675);\n a76 := evalf(2334 0475544602125119307511373519383499/\n 34957329425893779 598660175543672800000);\n a81 := evalf(81088643022740545033730780169 /2975182110231937140152800000);\n a83 := evalf(-2837794586103/675591 10640);\n a84 := evalf(-14167575606881316095038341141/13447191885934 68553337836000);\n a85 := evalf(2395552232834276839307772/2976006286 4388068268875);\n a86 := evalf(-407671589103100134158035776536204326 0356514682697/\n 6053580152355851363398109263598772150 7186400000);\n a87 := evalf(36551527355459957808/2801171464968864455 );\n a91 := evalf(-3347747115771808477876752833599/11013275913079015 49464211073280);\n a93 := evalf(1214704878477625125/1198151054529432 64);\n a94 := evalf(-65581118617864038124456452415/10200342297342072 539428709672);\n a95 := evalf(-133373082911575479273298406095/840708 26916189821955373830704);\n a96 := evalf(622515683654039386383701463 758952267447736841050281950137693/\n 328994218860140584 540186142455568117669077094653332432085760);\n a97 := evalf(46169188 671551441399013763125/2343692704156841275628930358208);\n a98 := eva lf(18880867865877597493091875/3469664148196911643475533504);\n aA1 : = evalf(-74309815528722196127526037/51427190037752065777334640);\n a A3 := evalf(913722369253875/113761793498234);\n aA4 := evalf(-440658 227159292602060396890/58109996881684093545238767);\n aA5 := evalf(37 290888293935763341814380/10411746696360295961914239);\n aA6 := evalf (-645152888113581065780360392105179310452496326847/\n \+ 264735425121804814898131042131367320451487910960);\n aA7 := evalf(47 3757486190086838681892500/556321100802942639360459887);\n\n # weight s\n b1 := evalf(9420080774669597/198627609019792680);\n b4 := eval f(18658605936510000/72821569629535727);\n b5 := evalf(29695087517503 0000/1101802245630054969);\n b6 := evalf(188752769802742126868248355 66143151189850553896330009/\n 14878094713960970610439415 7596648357994575577036224440);\n b7 := evalf(18663850606812500/74993 696164706319);\n b8 := evalf(179884749312500/58508928482581269);\n \+ b9 := evalf(349315176247648/7273791403140339);\n\n # error coeffici ents\n e1 := evalf(-3533065735/59469344017902);\n e4 := evalf(5180 68078020000/2257468658515607537);\n e5 := evalf(-1180043955490000/11 01802245630054969);\n e6 := evalf(1346495279586107119483858905287564 7384293125705935/\n 743904735698048530521970787983241789 9728778851811222);\n e7 := evalf(-44163321687500/13920985515604167); \n e8 := evalf(179884749312500/58508928482581269);\n e9 := evalf(3 49315176247648/7273791403140339);\n eA := evalf(-331667036438/679158 8611709);\n\n ## nodes and linking coefficients for 6 extra stages u sed for interpolation\n if outpt='rkinterp' then\n SQRT := eval f[Digits+3](sqrt(180755043913742866));\n cC := evalf(2146685158/4 473956375-2/4473956375*SQRT);\n cD := 0.43;\n cE := 0.26;\n \+ cF := 0.55;\n cG := 0.83;\n aB1 := b1; aB4 := b4; aB5 : = b5;\n aB6 := b6; aB7 := b7; aB8 := b8; aB9 := b9;\n aC1 := evalf(225342560614440320027906365337055452686332242614673753757406485 25933997/\n 4551159338323537135778537914353854762264953857056 70794557870788574218750+\n 1238068121484517107744219704342631 838409444665906868528712841/\n 227557966916176856788926895717 692738113247692852835397278935394287109375*SQRT);\n aC4 := evalf( 7457087958065237225409416450074182217192329012446692831292295318985386 24/\n 3084716876915252616385000146243529927457222901307213826 555251002197265625-\n 119310962700279813328661523487886715540 5723310882006423563500416/\n 33931885646067778780235001608678 829202029451914379352092107761024169921875*SQRT);\n aC5 := evalf( 5748422717127635764095521779571725985353188296949693624424972546898195 2/\n 40392995547243503587021680403315998046638680580681993538 7328328857421875-\n 12723334833237109550101919205318941335426 5931683044201240161088/\n 40392995547243503587021680403315998 0466386805806819935387328328857421875*SQRT);\n aC6 := evalf(14209 3160395480663204885167489986654545850250305236540992527184152420009027 59286179007146406661131690128389/3409021536737028298612164261243890577 9861162743735604601641071572255796948596642486978806154772125244140625 0-14016724676735956822085226905171478689676167349210346457629783020778 354312998659036383835554794633/170451076836851414930608213062194528899 305813718678023008205357861278984742983212434894030773860626220703125* SQRT);\n aC7 := evalf(1843238895119049936285156158307146253496849 33486582793959054466349488/\n 3409171526570001306259008605528 6565597737880445991753588639400732421875-\n 11942519352819056 42510240939189224284117766921034441101016272/\n 3409171526570 0013062590086055286565597737880445991753588639400732421875*SQRT);\n \+ aC8 := evalf(-12871564890195010632794115492064268206779757239278226 5921966491408/\n 31979797984725491629785687329144029414338470 06399730454235311376953125+\n 5347845907209489747023156514212 11371028831805437534149080272/\n 3517777778319804079276425606 2058432355772317070397034996588425146484375*SQRT);\n aC9 := evalf (-338172064294763284602937480752875726283240755075851806778112/\n \+ 38012413716473158390675564038245464161954129279157196044921875+\n 2151764609449716883896661322803572874794123498608128/\n \+ 38012413716473158390675564038245464161954129279157196044921875*SQ RT);\n aCB := evalf(207362832392545905882281288610522703464464128 8/\n 256071169610807711702959801584695797515869140625-\n \+ 14562076554209860506424710534440285472/\n 25607116961080 7711702959801584695797515869140625*SQRT);\n aD1 := evalf(29051157 4951847894924246395997158817490435709081822091/\n 57671504082 84479370022135770328114420065004800000000000+\n 4705996831947 36240876105751046839397184642185298813356930159/\n 4169766101 2264846699195775399975890733139961439413271690230272000000000*SQRT);\n aD4 := evalf(1916222238012806993246338685055939714792865127907/ \n 8316195722253974131837991996022720520426618750000-\n \+ 7530174552359328897560446670573245367833748922259477268127/\n \+ 96204436670163050533795213784976085169763654396959130196117600000 000*SQRT);\n aD5 := evalf(769527725100342335167117716460563215542 70538083/\n 791977340211125285773250331042077409888150000000- \n 4983119038101262335572424648045264969890228391577402221/\n 401835505708213964238320885739771847454028793110189250352000 00000*SQRT);\n aD6 := evalf(1102908259839824379613283484006465615 4489528435276334811298521779967759407590704166869/34222079835341638936 1357980278821050578466478286417192527238325240744255340800000000000-53 1403408556765639176236821088984781305384474418709176983095115744748554 872108289707724117453/123716270869135843496351553540221203077114618026 83764741111571304330248719329415900507679746560000000000*SQRT);\n \+ aD7 := evalf(3081649696232575783687762931737148526320611483/\n \+ 267371761995568421945648339865791151604824000000-\n 234235 684696242921825192201920194500486900966627253807/\n 452199247 5396844539090374596775083427785688266878538590464000000*SQRT);\n \+ aD8 := evalf(658314999365594590414025365441398834843035717/\n \+ 275889445740068862969121398027506897939064000000+\n 21145087 4750718008357795622342358483396712553101025533/\n 88654949120 149914664225173083463787120627599035309924830976000000*SQRT);\n a D9 := evalf(9936844813421706418427478360339675553/\n 39329000 09212110580766657077042500000000+\n 5174286658806410295606321 0659036754537368509/\n 15797589197188772672358497709016024780 966594529000000000*SQRT);\n aDB := evalf(-39582704911999855568933 1529706013/\n 78650010534872528167277680000000000+\n \+ 32772840118159575546964214156682739966233/\n 710819305402361 1432729802536787137370515440000000000*SQRT);\n aDC := evalf(19139 9341761485041005992165982101220113117/\n 22766868570936250907 509784418204480000000000+\n 226730159468627911818210493943942 1061061445535983611/\n 82304526566359886417966686259127442050 49888258479360000000000*SQRT);\n aE1 := evalf(4265305413482338601 7723280183443019854610278330185117/\n 77922522169139443399777 2420551176096385794443750000000+\n 19172805907936973359347123 40230782579127749/\n 3896126108456972169988862102755880481928 97221875000000*SQRT);\n aE4 := evalf(3068197814299615430667970139 438872031232246/\n 152048879069288025220810056232268141032281 25-\n 2641267033722666923589747390713301/\n 76024439 534644012610405028116134070516140625*SQRT);\n aE5 := evalf(546179 99593747352638148082347528232491819791/\n 4601048762237240995 99266606888501447129693750-\n 6842080048526829976766275280022 2081/\n 2300524381118620497996333034442507235648468750*SQRT); \n aE6 := evalf(6680845031196554634253895565380287925037902429011 60014371843446598408175575290462071/2019221039925937901607624470638787 4286885925963192717245454414917841966861856250000000-31152728433556051 600998938264736051232189158737977215310091689930041934947/252402629990 7422377009530588298484285860740745399089655681801864730245857732031250 000*SQRT);\n aE7 := evalf(-73419687194111056033244335588429516758 019/\n 25053472474411552937775459556967877637005000-\n \+ 483006790409026036573219469168447/\n 250534724744115529377 75459556967877637005000*SQRT);\n aE8 := evalf(-928633138111004223 4706807812522083597911/\n 28233593480742360348549870267646536 311035000-\n 6123319073796954971514805374467/\n 2823 3593480742360348549870267646536311035000*SQRT);\n aE9 := evalf(-6 16712529752219583581648827125569593424363518/\n 6169889745472 3144178690952955075789284697265625-\n 18722097257997296593710 2180171457992/\n 61698897454723144178690952955075789284697265 625*SQRT);\n aEB := evalf(145078769761262746671161818588663871726 03/\n 1281308477917209533629515979770809531250000+\n \+ 79399279328522037871545972560329/\n 121724305402134905694804 01807822690546875000*SQRT);\n aEC := evalf(1475487775479803484752 0411708400502558831409883411944741/\n 16311392780477993396610 84918903018608807078349579375000000+\n 5633499333658933518287 53792381670984010628383737/\n 4893417834143398018983254756709 055826421235048738125000000*SQRT);\n aED := evalf(-39318070051978 5496398448130814908934584/\n 25295429039947698963527629861148 79949125-\n 1307812578772870999461213865856/\n 48061 315175900628030702496736182719033375*SQRT);\n aF1 := evalf(182139 53970459030273329590218762583261062746639159/\n 3601752135818 00093936748141054765840107211654000000+\n 1037369856595056806 2442042345753219433183/\n 12806229816241781117751045015280563 20381196992000000*SQRT);\n aF4 := evalf(8542966998967494492194865 69130556920479123/\n 3680135778491567621344406306479915442584 960-\n 8094858112511786825329447444689/\n 1415436837 88137216205554088710765978560960*SQRT);\n aF5 := evalf(1572664894 5616703973032908185033828843885763/\n 11136211113254936752482 6128561813295712554240-\n 69897851397492013376027687942703/\n 1427719373494222660574693955920683278366080*SQRT);\n aF 6 := evalf(77804111621965223908632610546635362373741155974974163815208 2984491393678843411547/18797112226219640102238249617582893881610171078 463038599404837159881976424128000000-954757369351721493303445287183951 05271187368330100090270614665879192583/4699278056554910025559562404395 723470402542769615759649851209289970494106032000000*SQRT);\n aF7 \+ := evalf(39656397619163907956973727429066489640785/\n 6063851 374170301685593943956770116129160192-\n 822389697785417161619 210068935/\n 25913894761411545664931384430641521919488*SQRT); \n aF8 := evalf(-1141829691538737197473873356168012766775/\n \+ 4730923591245847144949738261575099611681792-\n 938326160 27017015416628389315/\n 2628290884025470636083187923097277562 04544*SQRT);\n aF9 := evalf(-130902930744195117957380643739579734 844519/\n 14359016134917386281586258142272183688075000-\n \+ 7969277146639603491848106556029/\n 15954462372130429201 76250904696909298675000*SQRT);\n aFB := evalf(3123144746341752309 10653648180647513403/\n 3693205592052922768340127837395684480 0000+\n 99138515497437932591795652933/\n 92330139801 32306920850319593489211200000*SQRT);\n aFC := evalf(2394996146219 17561102344388736561267269897587093490941/\n 1608424153286837 3933013601807731099052177649621926400000+\n 30480788383023602 63693014322165021873132072379/\n 1608424153286837393301360180 7731099052177649621926400000*SQRT);\n aFD := evalf(24361267456233 18952431247107327668175/\n 3797437248466222461685135544587276 5656-\n 212622950817284358164749650/\n 4746796560582 778077106419430734095707*SQRT);\n aG1 := evalf(267074002062228740 0411587207796260428920751202184408167/\n 65844531232922829672 811769536574380144599630496875000000-\n 636981616542603765928 33111531242591798867383953/\n 4214049998907061099059953250340 760329254376351800000000000*SQRT);\n aG4 := evalf(695198954219517 326941476178981554504382781043/\n 230008486155722976334025394 1549947151615600000+\n 47203493748120287464101922754265483/\n 442324011837928800642356527221143683003000000*SQRT);\n \+ aG5 := evalf(175716263168758687475280760725079806174120376193/\n \+ 765614514036276901733179633862466408023810400000+\n 15896 200659478364040380226770522034899/\n 174003298644608386757540 825877833274550866000000*SQRT);\n aG6 := evalf(558881182493265103 88734284410070130344337450556843015448054446387585546368558938509901/6 4615073277630012851443983060441197718034963082216695185454127737094293 9579400000000000+55674704718427064169248437281065865048210487782277489 4396230299116051191101/14685243926734093829873632513736635845007946155 049248905785029031157794081350000000000*SQRT);\n aG7 := evalf(440 0715066984363060992648631564563333854148827/\n 41688978197420 824088458364702794548387976320000+\n 863207230479751094724060 7046821601/\n 145765658032939944365239037422358560797120000*S QRT);\n aG8 := evalf(337542148294052228762679266866144960902881/ \n 328536360503183829510398490387159695255680000+\n \+ 6437241492487464856357809597133/\n 96628341324465832208940732 46681167507520000*SQRT);\n aG9 := evalf(5655041332718809691612532 743723956650726599023/\n 493591179637785153429527623640606314 277578125000+\n 24602396968682426531284907634272951/\n \+ 2639525024800990125291591570270622001484375000*SQRT);\n aGB := evalf(-3549660106562525236850812226379657760167953/\n 164007 485173402820304578045410663620000000000-\n 156088561712649090 66763682039098877/\n 7790355545736633964467457157006521950000 00000*SQRT);\n aGC := evalf(-490203986274592194492316688318575866 643121912108465483070577/\n 176424024313649976577742944828550 49272857359429050520000000000-\n 1871627726049342980667496142 3856199990559239091222389/\n 52927207294094992973322883448565 147818572078287151560000000000*SQRT);\n aGD := evalf(207562670691 1653264042466124085140745209/\n 20236343231958159170822103888 919039593000+\n 4017168554156161033204978186102/\n 4 8061315175900628030702496736182719033375*SQRT);\n end if;\n\n xsta rt := evalf(x0);\n xend:= evalf(xn);\n\n sgn := sign(xend-xstart); \n h := sgn*hstrt;\n\n eps := evalf(t);\n safety := 0.9;\n pgr ow := -0.14285714285714285714;\n pshrink := -0.16666666666666666667; \n errcontrol := 0.6122200345e-5; #(5/safety)^(1/pgrow)\n tiny := Float(1,-3*saveDigits);\n \n xk := evalf(x0);\n yk := evalf(y0); \n \n if ymaxtemp<>0 then\n ymax := abs(evalf(ymaxtemp))\n \+ else\n ymax := max(abs(yk),tiny)\n end if;\n \n soln := NUL L;\n finished := false;\n f1 := fn(xk,yk);\n\n for k from 1 to m axstps do\n if errcntl=0 then yscale := max(abs(yk),abs(f1*h),tin y)\n elif errcntl=1 then yscale := max(abs(yk),tiny)\n elif \+ errcntl=2 then yscale := abs(ymax)\n else yscale := max(abs(f1*h) ,tiny) end if;\n\n if abs(h)>=hmx then\n h := sgn*hmx;\n \+ maxstepsize := true;\n else\n maxstepsize := fals e;\n end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true;\n else\n minstepsize := fal se;\n end if;\n if (xk+h-xend)*(xk+h-xstart) > 0 then \n \+ h := xend-xk;\n laststep := true;\n else\n l aststep := false;\n end if;\n\n # Do step.\n do\n \+ t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t \+ := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n \+ t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h); \n t := a61*f1 + a63*f3 + a64*f4 + a65*f5;\n f6 := fn (xk + c6*h,yk + t*h);\n t := a71*f1 + a73*f3 + a74*f4 + a75*f 5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a8 1*f1 + a83*f3 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn( xk + c8*h,yk + t*h);\n t := a91*f1 + a93*f3 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + h,yk + t*h);\n\n \+ yout := yk + (b1*f1 + b4*f4 + b5*f5 + b6*f6 + b7*f7 + b8*f8 + \+ b9*f9)*h;\n\n # error estimate\n t := aA1*f1 + aA3*f3 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7;\n fA := fn(xk + h,yk + t *h);\n\n yerr := (e1*f1 + e4*f4 + e5*f5 + e6*f6 + e7*f7 + e8*f 8 + e9*f9 + eA*fA)*h;\n \n err := abs(yerr/yscale)/eps ;\n if err<=1.0 or minstepsize then break end if;\n\n \+ # Shrink, but not too much.\n if prntflg then\n pr int(`reducing step-size and repeating step`);\n end if;\n \+ htemp := safety*h*err^pshrink;\n if h>=0 then\n \+ h := max(htemp,0.1*h)\n else\n h := min(htemp,0.1* h)\n end if;\n if maxstepsize then maxstepsize := fals e end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n \+ minstepsize := true;\n end if;\n end do;\n\n \+ if outpt='points' or outpt='rkstep' then\n soln := soln,[xk ,yk];\n else # 6 extra stages needed for interpolation\n \+ t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9;\n \+ fB := fn(xk + h,yk + t*h); \n t := aC1*f1 + aC4*f4 + aC 5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9\n \+ + aCB*fB;\n fC := fn(xk \+ + cC*h,yk + t*h);\n t := aD1*f1 + aD4*f4 + aD5*f5 + aD6*f6 + a D7*f7 + aD8*f8 + aD9*f9\n \+ + aDB*fB + aDC*fC;\n fD := fn(xk + cD*h,yk + t*h); \n t := aE1*f1 + aE4*f4 + aE5*f5 + aE6*f6 + aE7*f7 + aE8*f8 + \+ aE9*f9\n + aEB*fB + aEC *fC + aED*fD;\n fE := fn(xk + cE*h,yk + t*h);\n t := a F1*f1 + aF4*f4 + aF5*f5 + aF6*f6 + aF7*f7 + aF8*f8 + aF9*f9\n \+ + aFB*fB + aFC*fC + aFD*fD;\n \+ fF := fn(xk + cF*h,yk + t*h);\n t := aG1*f1 + aG4*f4 + \+ aG5*f5 + aG6*f6 + aG7*f7 + aG8*f8 + aG9*f9\n \+ + aGB*fB + aGC*fC + aGD*fD;\n fG := fn(x k + cG*h,yk + t*h);\n soln := soln,[xk,yk,f1,f4,f5,f6,f7,f8,f9 ,fB,fC,fD,fE,fF,fG];\n end if;\n \n if err>errcontrol t hen\n hnext := safety*h*err^pgrow;\n inc := false;\n \+ else\n hnext := 5*h;\n inc := true;\n end if; \n\n xk := xk + h;\n yk := yout;\n f1 := fn(xk,yk);\n \+ if prntflg then\n print(`abs err estimate -> `,evalf(abs(y err),5),`abs err bound -> `,evalf(abs(yscale)*eps,5));\n print ('step',k,` `,h,` `,[xk,yk]);\n if laststep then\n \+ print(`last step`);\n elif inc then\n print(`in creasing step-size by a factor of 5`)\n elif maxstepsize then \n print(`used maximum step-size`)\n elif not minst epsize then\n print(`using error to adjust step-size`)\n \+ else \n print(`used minimum step-size`)\n end if;\n print(``);\n end if;\n\n if (xk-xend)*(xend-x start)>=0 then\n finished := true;\n break;\n end if;\n\n if abs(yk)>ymax then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n if not finished and k>=maxstps then\n e rror \"reached maximum number of steps before reaching end of interval \"\n end if;\n\n soln := soln,[xk,yk];\n if outpt='rkstep' then \n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,\n \+ c4_=c4,c5_=c5,c6_=c6,c7_=c7,c8_=c8,c9_=c9,a31_=a31,\n a32 _=a32,a41_=a41,a51_=a51,a53_=a53,a54_=a54,a61_=a61,\n a63_=a63 ,a64_=a64,a65_=a65,a71_=a71,a73_=a73,a74_=a74,\n a75_=a75,a76_ =a76,a81_=a81,a83_=a83,a84_=a84,a85_=a85,\n a86_=a86,a87_=a87, a91_=a91,a93_=a93,a94_=a94,a95_=a95,\n a96_=a96,a97_=a97,a98_= a98,b1_=b1,b4_=b4,b5_=b5,b6_=b6,\n b7_=b7,b8_=b8,b9_=b9\};\n \+ return subs(eqns,eval(rk67step));\n elif outpt='rkinterp' then\n d12 := evalf(-22269145353327439261918180147380083587452585390545 12456715997900605031475274030985219608955285297/2738898192331194728581 0883633195392887967728517378488430933270066824588128970098322400467165 5820-25347446915917752087309690839395465920225701386340558078659076282 1922618962801971/69764848629134586428107908080173700012653731672682667 49263422416980714773420132535826298980*SQRT);\n d13 := evalf(4192 0666521987368555964770371631635708451431140132963760799853150402829762 4201755633098991003520/12420584825687976094728191415053724681752807118 346058707051134100071615546858532960158351389043-598773521241301087466 8487140841884021731571163217461523801347557137615510442284487489/11291 4407506254328133892649227761133470480064712236897336828491818832868607 80484509234864899130*SQRT);\n d14 := evalf(3795783883508356199406 95633031953595791534248504180880556744454322234241568726169886127/9785 9153172087084382706962664059649007749389417271977691918026242988486126 764199080035495792460*SQRT-7178265764062073276463145312073724454159539 264484515042300390598854926590074677599778651150529122587/925747589007 9438182604078668020042796133092238873929089655445282586710787591893232 9713579019667160);\n d15 := evalf(1146990769359468394701621391943 689439115794458166028899034906299538122904745935424688305850574901619/ 1157184486259929772825509833502505349516636529859241136206930660323338 8484489866541214197377458395-21099627075417627136122105873486107569821 7499015958997035047308085540566071860482927168/24464788293021771095676 7406660149122519373473543179944229795065607471215316910497700088739481 15*SQRT);\n d16 := evalf(6834593413873822971905503911786086538126 311846535099569209347295725658980397005872600/863463116224297803376826 141153467491244847553681811567869864937438133701118507638941489668757* SQRT-26806910309519144082869531617083386089907536156204154965895600373 896721921834716518982576224745800/408418053974092860997238764765590123 358812892891496871602446115408237240629054113219324613322061);\n \+ d17 := evalf(404649597695834220487721218070235171872191133957604835512 56928164097833638173866554004724573890000/2314368972519859545651019667 005010699033273059718482272413861320646677696897973308242839475491679- 1273656836766776303230106779367970518966712929164880934861546973518421 0936312694080000/48929576586043542191353481332029824503874694708635988 84595901312149424306338209954001774789623*SQRT);\n d42 := evalf(2 6258516007624416751026834120814753768256431730754213844467366672243132 036163419160000/944641885672721995061585448731160957528392509241409957 900936351267448145005503352057+506321772569520296457194725077122979034 539636679671167858205756304665720000/944641885672721995061585448731160 957528392509241409957900936351267448145005503352057*SQRT);\n d43 \+ := evalf(-256322773005966485267063829329883192616609374224880084526479 55419877287845907726637800000/1350837896511992452938067191685560169265 60128821521623979833898231245084735786979344151+9606951900724153305155 5744517389798451366257795966318581078428309610137040000/12280344513745 3859358006108335050924478691026201383294527121725664768258850715435767 41*SQRT);\n d44 := evalf(9601356253134568715664727474604329480416 44655914120106550650745962862932463954291463430000/1756089265465590188 819487349191228220045281674679781111737840677006186101565230731473963- 9135151747895987127590860711005509274557232393784766378550627146314202 203080000/159644478678690017165407940835566201822298334061798282885258 243364198736505930066497633*SQRT);\n d45 := evalf(203118302910124 57983961232040974533137737005275808478537490380167773319034880000/1596 4447867869001716540794083556620182229833406179828288525824336419873650 5930066497633*SQRT-139168748473974061736639527385764090972566541546663 1527878528091785064606928921449547280000/17560892654655901888194873491 91228220045281674679781111737840677006186101565230731473963);\n d 46 := evalf(-109656836614910346790218295332511628756220851580277815543 4420060751835360000000/93908516869817657156122318138568354013116667095 17546052074014315541102147407650970449*SQRT+58524898098698837197506513 322476461174548145206895452192054789655655361611376100160000000/103299 3685567994228717345499524251894144283338046930065728141574709521236214 84160674939);\n d47 := evalf(-27851643305935486893119254490296729 8092537601589224392545715782530737331213089484000000000/17560892654655 9018881948734919122822004528167467978111173784067700618610156523073147 3963+61305115547598992381952482892938518620531733366770899145233316704 81664000000000/1596444786786900171654079408355662018222983340617982828 85258243364198736505930066497633*SQRT);\n d52 := evalf(1393010341 6790216911804492712374548755713233157021745802919624546239892970827328 5160000/47641953533149919151739062157124023453239846389138325991675151 30718505582944392701493+1413699695110443415317121122452686135635175241 28428001393388223894809880000/2507471238586837850091529587217053865959 99191521780663114079743722026609628652247447*SQRT);\n d53 := eval f(80470635722837592776941644369815561809126977277651451772334143682020 706480000/977913783048866761535696539014651007724396846934944586144911 0005159037775517437650433*SQRT-135978847205790209716688980166455379474 673705882023437753572207507238626142346457667800000/681279935524043843 869868588846873535381329803364678061680954663692746298361048156313499) ;\n d54 := evalf(509350511311358816908734049796958860763880284885 6335306107069285469821131860080416593930000/88566391618125699703082916 55009355959957287443740814801852410628005701878693626032075487-2550623 3269901484147705721967147194084158187116262674015966055291143525453200 00/4237626393211755966654685002396821033472386336718093206627947668902 2497027242229818543*SQRT);\n d55 := evalf(-7382881264367044684866 937961534334913972673245681073499990913869905454238562552390375280000/ 8856639161812569970308291655009355959957287443740814801852410628005701 878693626032075487+567126081578818609263160053355581063594320559184004 9554057298199342600427520000/42376263932117559666546850023968210334723 863367180932066279476689022497027242229818543*SQRT);\n d56 := eva lf(-918517698947990179590488773098503193492646169912195952098114944297 932320000000/747816422331486347056709118070027241201009353538487036463 7554709827499475395687615037*SQRT+931421123800673862324020773199251124 652029650679862415186789065248089590131765948480000000/156293632267280 6465348522056766356934110109548895437906209248934353947390357698711542 733);\n d57 := evalf(-6424023940281045128485341171140089454711799 2357232610418557587320707777641064908000000000/38507126790489434653514 3115435189389563360323640904991384887418608943559943201131829369+17116 9852559424394406613490481177570539915671950780095284636144833305600000 0000/42376263932117559666546850023968210334723863367180932066279476689 022497027242229818543*SQRT);\n d62 := evalf(863311806021045009536 1261140322199940913400485712154697142326053275525654810939979637446376 5894102592090234933690215476593/62724591671486773285486687206123673752 9147393394706936529968613008989029439831300448929165129687945189037229 0393471259130+16646544830555130341995957583383523516189859139023381150 02345844847703678969786578392623059729046923092866806581/6272459167148 6773285486687206123673752914739339470693652996861300898902943983130044 89291651296879451890372290393471259130*SQRT);\n d63 := evalf(1214 8139488513270043073855090528899379780432800898942815885768681378126584 003709175407776826116581400251589485867/313622958357433866427433436030 6183687645736966973534682649843065044945147199156502244645825648439725 945186145196735629565*SQRT-1296496467448448105381953934720488741745722 7443845048382837569170867846455693269955639203752113317662335275710040 44729917551/1379941016772709012280707118534720822564124265468355260365 9309486197758647676288609876441632853134794158819038865636770086);\n \+ d64 := evalf(97128509643684902904378017611304403283421762046003646 5138127517994326130890960579188043173327818560102318599270379044278242 037/358784664360904343192983850819027413866672309021772367695142046641 1417248395835038567874824541815046481292950105065560222360-23103081774 3161960370551479216264544091826252265125859808196996482055105671519451 8880519093739501312727771510373743/81541969172932805271132693367960775 8787891611413119017488959196911685738271780690583607914668594328745748 39775115126368690*SQRT);\n d65 := evalf(-175981038145534791193926 2886348928298302892005119385465855607256728557383790349630826342861421 91836395519170226595931825419719/4484808304511304289912298135237842673 3334038627721545961892755830142715604947937982098435306772688081016161 8763133195027795+25684624029774607382018592272090716698723626101132455 92869010930660028246358331553249069436918405387250628890653824/4077098 4586466402635566346683980387939394580570655950874447959845584286913589 034529180395733429716437287419887557563184345*SQRT);\n d66 := eva lf(-277325536930527798434914540356196987946297762835079329856318014762 16974818571556107015586795609588979096486355600/4796586421937223839478 3937275271044634581859494889353969938776288922690486575334740212230274 6231958085734351618324272757*SQRT+148011280373003036187891184107376944 0966633025408833848957904815491770474843402774451576899614748376827267 653791947230613600/527624506413094622342623310027981490980400454443782 8936693265391781495953523286821423345330208551538943077867801567000327 );\n d67 := evalf(-3062507337179419831951922715839669264024147152 1231046222861964394274511113516913199323439315762705555077008367543638 5430000/38998333082706993825324331610763849333333946632801344314689352 89577627443908516346269429157110668528784014076201158217633+1550425364 3146040101308285465877009318152612009170131111932938727585288441449922 8649532367790081193826616781440000/81541969172932805271132693367960775 8787891611413119017488959196911685738271780690583607914668594328745748 3977511512636869*SQRT);\n d72 := evalf(87552989683959332218354891 83940909035394543378173440733283235028920107868938996750000/3242729085 1227156307907811527587743850295230837987363273174333247512290207805230 7443+88853349554486727151925665027953118848538623484789093048924065383 85250000/1706699518485639805679358501451986518436591096736177014377596 4867111731688318542497*SQRT);\n d73 := evalf(-2848831352368253919 518226491826529065761468296578181942722701648456440695704386923750000/ 1545700863908494450676939016148349123530739336610730982687976551464752 4999053826654783+50577117258234001234831833804706659320205723491563989 13399752347410446500000/6656128122093995242149498155662747421902705277 27109035607262629817357535844423157383*SQRT);\n d74 := evalf(3201 3516862058195799961700971134887899917137214100952609983215461971034736 9526004461187500/60282333692431283576400621629785615817698834127818508 3248310855071253474963099239536537-16031086859446360536952859284820516 9772579044311674086382573812575427524750000/28843221862407312715981158 67453857216157838953484139154298138062541882655325833681993*SQRT);\n \+ d75 := evalf(-1546754076015244321673258119685736772242480964433000 96439901474617581633623690791245500000/2009411123081042785880020720992 85386058996113759395027749436951690417824987699746512179+3564480641983 33095023871303060449042055570785496300684355669489899370816000000/2884 3221862407312715981158674538572161578389534841391542981380625418826553 25833681993*SQRT);\n d76 := evalf(-577303471585120772689181867410 53439321963977493074359251502470521031000000000/5089980328660114008702 55741315386567557265697673671615464377305154449880351617708587*SQRT+58 5413486200325063957743636718272396615347064250700486242983938008367501 38138734000000000/1063805888689963827818834499349157926194685308137973 67632054856777280024993488101094683);\n d77 := evalf(-30954968898 9512827657171939714811859630785324736818988749877554005565614037505250 00000000/2009411123081042785880020720992853860589961137593950277494369 51690417824987699746512179+1075830658749933886455656762660469904608413 48359557440154825912084800000000000/2884322186240731271598115867453857 216157838953484139154298138062541882655325833681993*SQRT);\n d82 \+ := evalf(1097002023454006523033695793751700439536073969759020016849881 874980409429414587750000/328890557450424864099789057007214264674485851 5671305611760745767638069967882475233709+21152604696560414430021248668 194368323329887921302391061205452605866750000/328890557450424864099789 0570072142646744858515671305611760745767638069967882475233709*SQRT);\n d83 := evalf(-27457426897068067441538859821955927395519432419262 214141783988878180042487599273750000/120593204398489116836589320902645 23038064481224128120576456067814672923215569075856933+9261914529946123 73279398676414464304397834366241891484516501079144303500000/9866716723 5127459229936717102164279402345755470139168352822373029142099036474257 01127*SQRT);\n d84 := evalf(3085506617396963524322504797241026305 353587992586633050076295366854713915317760878687500/470313497154107555 662698351520316398484514767740996702481786644772244005407193958420387- 2935686420328002653878422260676141303678613190979060865077086092813710 0250000/42755772468555232332972577410937854407683160703726972952889694 979294909582472178038217*SQRT);\n d85 := evalf(-14907827707886293 1678556072019113545890514411646742748920549121377827280055153010550000 0/15677116571803585188756611717343879949483825591366556749392888159074 8001802397986140129+65274410325002072517501220327281399575363658012336 934925869411407093184000000/427557724685552323329725774109378544076831 60703726972952889694979294909582472178038217*SQRT);\n d86 := eval f(-1057184691717890120472542312745210151604961623971402677353363761546 9000000000/75451363179803351175833960136949154837087930653635834622746 52055169689926318619653803*SQRT+56422953884373685970417953097449927993 7455761123489243392268238283588461538014000000000/82996499497783686293 417356150644070320796723718999418085021172606866589189504816191833);\n d87 := evalf(-12971662236431365528729405459780935147292400960312 949912609260620878061016675000000000/681613763991460225598113552927994 7804123402431028937717127342677858608774017303745223+19701106251593121 842926062837892716611776395125808031258224887115200000000000/427557724 6855523233297257741093785440768316070372697295288969497929490958247217 8038217*SQRT);\n d92 := evalf(21302498217965087428928859632622706 20548174312566741989668142295373449339270900684928/4088745720354700676 89091539035492683671877852659553367349329569447942890438339325979+4107 5888122342227972409486663363657254527234767335712834155238641325275776 /408874572035470067689091539035492683671877852659553367349329569447942 890438339325979*SQRT);\n d93 := evalf(-53319116559425606412612707 324991781046079131909623721358918531287418837000063650348160/149920676 4130056914860002309796806506796885459751695680280875087975790598273910 861923+179855564120018629984036274327885802914005348842487448719224949 1230892507392/12266237161064102030672746171064780510156335579786601020 47988708343828671315017977937*SQRT);\n d94 := evalf(4608995019946 3986598535283077064364451084613776567801781788690786034160195583005077 7376/44976202923901707445800069293904195203906563792550870408426252639 27371794821732585769-4385200153234761241221928592356992565544803895365 235195575012946807294416256/408874572035470067689091539035492683671877 852659553367349329569447942890438339325979*SQRT);\n d95 := evalf( -222686619035135953111216594645294617523166763757789795495866549425708 046574135770751232/149920676413005691486000230979680650679688545975169 5680280875087975790598273910861923+97504063164732075926225447437519409 82335394033485555419681421757588840022016/4088745720354700676890915390 35492683671877852659553367349329569447942890438339325979*SQRT);\n \+ d96 := evalf(-1579176318021310176687382612021447045852191271637397023 482043562871225856000/721543362415535413568985068886163559420960916458 03535414587571079048745371471645761*SQRT+84282144137202701561833627808 430491235615257198472487066445314398077779270849319936000/793697698657 0889549258835757747799153630570081038388895604632818695361990861881033 71);\n d97 := evalf(-44565955721957369285982613055077901973530927 958751644315958210881039836042073689600000/149920676413005691486000230 9796806506796885459751695680280875087975790598273910861923+29428652036 93240321908688248970268509403948670249302367060266309770444800000/4088 7457203547006768909153903549268367187785265955336734932956944794289043 8339325979*SQRT);\n dB2 := evalf(-9523821674092895146329150953006 11433631076819255083086850640249989889267/1101567214178208434239136236 7135895081558638571112211085507770349837506134132171131*SQRT-116396048 4890072824950979441802344893763660779982765788144831712376462878737379 515091/209297770693859602505435884975582006549614132851132010624647636 646912616548511251489);\n dB3 := evalf(24078846362310572021453040 041988184450439431228049858473023213644559938851571748334363/627893312 0815788075163076549267460196488423985533960318739429099407378496455337 54467-4170116333627710356185834604410962682915185447916658270032050186 5299980814/33047016425346253027174087101407685244675915713336633256523 311049512518402396513393*SQRT);\n dB4 := evalf(-30524865209939383 3700634369967776347987107626789840713625048015879238622274760633097954 /272087101902017483257066650468256608514498372706471613812041927640986 4015130646269357+13217735763201952241664054029726361909450194521830737 50406523175429248145801/1432037378431670964510877107727666360602623014 24458744111601014547887579743718224703*SQRT);\n dB5 := evalf(4522 7150360397264151945078014433931173633157257530679342696595384170116210 2138420564564/27208710190201748325706665046825660851449837270647161381 20419276409864015130646269357-2938937557500779421147461581097381427345 396200193934222668560521912503099136/143203737843167096451087710772766 636060262301424458744111601014547887579743718224703*SQRT);\n dB6 \+ := evalf(4759904808384788441151278410416401570730093261286673579238350 29315024276000/2527124785467654643254489013637058283416393554549271954 9106061390803690543009098477*SQRT-588047930631139655622837906883543984 66376018663907164603511162562940913124312863074000/4801537092388543822 18352912591041073849114775364361671433015166425270120317172871063);\n \+ dB7 := evalf(5104954101050463070115331383452297117224397269907074 814776887878701942997044041800000/143203737843167096451087710772766636 060262301424458744111601014547887579743718224703-887029400937274373879 720858681165988783147398658216617475913988302380800000/143203737843167 096451087710772766636060262301424458744111601014547887579743718224703* SQRT);\n dC2 := evalf(1603399578131659591986633568269004457638817 096979141011086242759934286402368856300930586967334969/376777019888943 2442150053011748194033077086278202245836183896450988156288783623087781 376278695988+298655412345063389799781877162056960075697050143828934527 1241613108958782289089768490387/12559233996298108140500176705827313443 59028759400748612061298816996052096261207695927125426231996*SQRT);\n \+ dC3 := evalf(45634367686520658632873466164417583714456624735260987 1401696708571921563383510340570111821330804337/73471518878343932621926 0337290897836450031824249437938055859807942690476312806502117368374345 71766+8500033980553381903185489704127419388686725386946747514560644708 92387547227861650878925051/2449050629278131087397534457636326121500106 0808314597935195326931423015877093550070578945811523922*SQRT);\n \+ dC4 := evalf(-28928833900252585703748463369567312439191333565717820239 396438789023336529117201919290580177991761791/636753163612314082723358 9589854447915900275810161795463150785002169984128044323018350525910996 21972-5388396588708812969179126879265565439350597395381292325171760581 5102666458182993975398379093/21225105453743802757445298632848159719667 5860338726515438359500072332804268144100611684197033207324*SQRT);\n \+ dC5 := evalf(160806733405976072761931252956630279772913817312182345 15833976202672194646698398494618074577309242944/1591882909030785206808 3973974636119789750689525404488657876962505424960320110807545876314777 4905493+29952484663358774998248607538830525510012611909888669593237982 432786435384501999606384901312/530627636343595068936132465821203992991 68965084681628859589875018083201067036025152921049258301831*SQRT);\n \+ dC6 := evalf(-2604426697009037431452549377593574600962065448871923 460504817100747586785008777540284841700501379000/280920513358373860025 0113054347550551132474622130203880801816912722051821196024861036996725 4395087-48511059858458817861235106662796327688089674190941764502050945 36955734801900022044546817000/9364017111945795334167043514491835170441 582073767346269339389709073506070653416203456655751465029*SQRT);\n \+ dC7 := evalf(9040251454037565518185172822589397178433924449240664751 194438418651035246598459520273600000/530627636343595068936132465821203 99299168965084681628859589875018083201067036025152921049258301831*SQRT +485346481879940770650140998460397645247635564554076339112036044030691 0946132951463535780524443200000/15918829090307852068083973974636119789 7506895254044886578769625054249603201108075458763147774905493);\n \+ dD2 := evalf(-1280814282083616128377365749148599001956727799606265252 6998151076603879780454400000000/46530742958881931028752142748506165150 29583103331495544423901426176982843770295785747+2286667501771474791548 565678949613633647571762684607402102439340800000000/569531737562814333 2772600091616421683022745536513458438707345686875131999718844291*SQRT) ;\n dD3 := evalf(-13042313095679993704245380776990452049582114909 462736409242535505251873875353600000000/324633090410804169968038205222 136035932296495581267131006318704151882523983974124587+100124401999800 480766552067252401744559724976823967065267321048153600000000/170859521 2688442999831780027484926504906823660954037531612203706062539599915653 2873*SQRT);\n dD4 := evalf(13673781000984168208167156559639165019 94544946728928203017112073925712374897766400000000/4653074295888193102 875214274850616515029583103331495544423901426176982843770295785747-244 1211897670694222492155528314624572706999193934991636071206973248000000 00/5695317375628143332772600091616421683022745536513458438707345686875 131999718844291*SQRT);\n dD5 := evalf(-30403383194201452205966480 43150332277939022145785489351717644208147079203153510400000000/4653074 2958881931028752142748506165150295831033314955444239014261769828437702 95785747+5427986654004753191031886490159364151098628686883741796431224 29132800000000/5695317375628143332772600091616421683022745536513458438 707345686875131999718844291*SQRT);\n dD6 := evalf(-87911700295588 303489154627812135738703911260077934704558557004800000000000/100505600 7463789999901047074991133238180484506443551489183649238860317411715090 169*SQRT+4924133535532130160362504536024348677944036052071242784380320 56270790844006400000000000/8211307580979164299191554602677558555934558 41764381566663041428148879325371228668073);\n dD7 := evalf(-48296 5344010997870200454070841596143242227529167779590204653521751526604800 00000000000/2448986471520101633092218039395061323699780580700787128644 15864535630675987910304513+1638273578732228545375038733212116996627782 93776081347304611840000000000000/5695317375628143332772600091616421683 022745536513458438707345686875131999718844291*SQRT);\n dE2 := eva lf(-759838907166639240489705869718103942247119083499940044113394822163 687386250000/250732165469122306203507728487950496568835034691339136489 45504904518738194653-3065045169384393702133941020059045937774396415538 336210778626250000/131964297615327529580793541309447629773071070890178 4928891868679185196747087*SQRT);\n dE3 := evalf(23819330968144216 0964863349248913087267978731151093676387071488304463148626250000/97785 5445329576994193680141103006936618456635296222632308874691276230789591 467-174468548131295798270712473191965613994466403982742853457747043250 0000/51466076069977736536509481110684575611497717647169612226782878488 222673136393*SQRT);\n dE4 := evalf(-37001466379028972387191960620 725305808389898894964884702100544321035712396250000/487054436371053675 26888282890188084965670253865329096628411383090386974194211+5530011596 0621692609787917523619389302101680829699614242563918923750000/22301966 2969903524991541084812966494316490109804401652982725806782298250257703 *SQRT);\n dE5 := evalf(162277848299825923684033853901654296255928 7522972996312581871590098077961803750000/14124578654760556582797602038 15454464004437362094543802223930109621222251632119-1229587204968066258 78011427944909929970494018418294620304598370880000000/2230196629699035 24991541084812966494316490109804401652982725806782298250257703*SQRT); \n dE6 := evalf(1991440081575928087739160802956216922549585929569 9244690403955000000000/39356411112335916174977838496405851938204137024 306174055775142373346750045477*SQRT-6292779407621495752638987245575262 30731548924820056003825248466825975100625000000/7477718111343824073245 78931431711186825878603461817307059727705093588250864063);\n dE7 \+ := evalf(5331274861357034111167351796578197613382585082701880646270497 4032073062500000000/22301966296990352499154108481296649431649010980440 1652982725806782298250257703-37111370367135544576270758542186596239506 781253555878047464000000000000/223019662969903524991541084812966494316 490109804401652982725806782298250257703*SQRT);\n dF2 := evalf(-46 7561241420826664555067375457963063139051958703634112877356204920073872 000/159770887414912870594332402955060723340271933693624444124122537898 17106269-2345642973443156783462747885967764320245710402523031573148560 000/145246261286284427813029457231873384854792666994204040112838670816 5191479*SQRT);\n dF3 := evalf(79072084036075871691586227708109667 062292097248893772911734953575971007664000/335518863571317028248098046 205627519014571060756611332660657329586159231649-102706711771207489599 125718328559708627774471713742898517327520000/435738783858853283439088 3716956201545643780009826121203385160124495574437*SQRT);\n dF4 := evalf(-39926740202067406062155186987315606820225192797286269181608099 287588690208000/501350026026105904278767195479673304274646412624821531 56190175685288161051+3255425193661660250999486308672858950451572041390 545730682485680000/188820139672169756156938294401435400311230467092465 25214669027206147489227*SQRT);\n dF5 := evalf(1923429666363165343 746384044906316126378419227952069296852531197359285821840000/145391507 5475707122408424866891052582396474596611982441529515094873356670479-72 38373908126007847046353200060269885677993660624021770579988480000/1888 2013967216975615693829440143540031123046709246525214669027206147489227 *SQRT);\n dF6 := evalf(-27018976945740682418238925523941802848506 6069466630303061652919784097550000000/25657324861336008042501615298077 3985128789634696232195564032075565886471261+11723274175132535208948538 59597335744182117626402108289823680000000/3332120111861819226298911077 672389417257008242808210332000416565790733393*SQRT);\n dF7 := eva lf(4654235352350612182339596351807380476325403969769619150844581765758 58000000000/1453915075475707122408424866891052582396474596611982441529 515094873356670479-218468420844742886257607781105615194158869465105278 5631744000000000/18882013967216975615693829440143540031123046709246525 214669027206147489227*SQRT);\n dG2 := evalf(-41408285022444202041 24212022330666121510700073635080552110566529826330000000/1491918398016 85794070479184633306267224986076990330119210156778770883595251-6733946 5560930051100549481272968783714295739410739875790000000/94604844515970 700108103477890492243008868786931090754096484958003096763*SQRT);\n \+ dG3 := evalf(5891723365736258474071815466762387939661270512125186817 65134163822395630000000/3133028635835401675480062877299431611724707616 796932503413292354188555500271-244728570441148431446527023206988328382 881588673305538239940000000/235566062844767043269177659947325685092083 27945841597770024754542771093987*SQRT);\n dG4 := evalf(-242243176 4329501757046188287730403814903209822650172372050414394276784540000000 /452548580731780242013786860054362343915791100204001361604142228938346 9055947+77569960140254464201594783408880778782872343752214967224517100 00000/1020786272327323854166436526438411302065694210986469236701072696 85341407277*SQRT);\n dG5 := evalf(3446136046971765006504196341738 278680363644075585418285885448101582199390000000/452548580731780242013 7868600543623439157911002040013616041422289383469055947-17247528114815 824613371519020941056035050737001298524911874560000000/102078627232732 385416643652643841130206569421098646923670107269685341407277*SQRT);\n \+ dG6 := evalf(2793410557394664777122094565812942832120295987304258 343960000000000/180138753940115974264665269371484347423357801938788688 82960106415060248343*SQRT-12711483414623607743160200823088924279138487 77148350682278407669915178750000000/2395845427403542457720048082640741 820730658765785889561433694153203013029619);\n dG7 := evalf(-5205 644635860835482407385202029881817964629314905256768000000000000/102078 627232732385416643652643841130206569421098646923670107269685341407277* SQRT+10293665029360271259092664365763973710533842788498916670170293957 4750000000000/71455039062912669791650556850688791144598594769052846569 0750887797389850939); \n eqns := \{SOLN_=[soln],\n d12_=d1 2,d13_=d13,d14_=d14,d15_=d15,d16_=d16,d17_=d17,\n d42_=d42,d43_ =d43,d44_=d44,d45_=d45,d46_=d46,d47_=d47,\n d52_=d52,d53_=d53,d 54_=d54,d55_=d55,d56_=d56,d57_=d57,\n d62_=d62,d63_=d63,d64_=d6 4,d65_=d65,d66_=d66,d67_=d67,\n d72_=d72,d73_=d73,d74_=d74,d75_ =d75,d76_=d76,d77_=d77,\n d82_=d82,d83_=d83,d84_=d84,d85_=d85,d 86_=d86,d87_=d87,\n d92_=d92,d93_=d93,d94_=d94,d95_=d95,d96_=d9 6,d97_=d97,\n dB2_=dB2,dB3_=dB3,dB4_=dB4,dB5_=dB5,dB6_=dB6,dB7_ =dB7,\n dC2_=dC2,dC3_=dC3,dC4_=dC4,dC5_=dC5,dC6_=dC6,dC7_=dC7, \n dD2_=dD2,dD3_=dD3,dD4_=dD4,dD5_=dD5,dD6_=dD6,dD7_=dD7,\n \+ dE2_=dE2,dE3_=dE3,dE4_=dE4,dE5_=dE5,dE6_=dE6,dE7_=dE7,\n dF 2_=dF2,dF3_=dF3,dF4_=dF4,dF5_=dF5,dF6_=dF6,dF7_=dF7,\n dG2_=dG2 ,dG3_=dG3,dG4_=dG4,dG5_=dG5,dG6_=dG6,dG7_=dG7\};\n return subs(eq ns,eval(rk67interp));\n else \n return evalf[saveDigits]([soln] );\n end if;\nend proc: # of rungk67b" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 23 "rungk78: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 76875 "rungk78 := proc(fxy,eqn1,eqn2) \n local ytemp,fn,soln,xk,yk ,k,xend,xstart,h,c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,cF,\n cG,cH,cI,cJ,cK, cL,a21,a31,a32,a41,a43,a51,a53,a54,a61,a63,a64,a65,a71,a74,\n a75,a7 6,a81,a84,a85,a86,a87,a91,a94,a95,a96,a97,a98,aA1,aA4,aA5,aA6,aA7,aA8, \n aA9,aB1,aB4,aB5,aB6,aB7,aB8,aB9,aBA,aC1,aC4,aC5,aC6,aC7,aC8,aC9,a CA,aCB,\n aD1,aD4,aD5,aD6,aD7,aD8,aD9,aDA,aE1,aE6,aE7,aE8,aE9,aEA,aE B,aEC,aF1,aF6,\n aF7,aF8,aF9,aFA,aFB,aFC,aFE,aG1,aG6,aG7,aG8,aG9,aGA ,aGB,aGC,aGE,aGF,aH1,\n aH6,aH7,aH8,aH9,aHA,aHB,aHC,aHE,aHF,aHG,aI1, aI6,aI7,aI8,aI9,aIA,aIB,aIC,\n aIE,aIF,aIG,aIH,aJ1,aJ6,aJ7,aJ8,aJ9,a JA,aJB,aJC,aJE,aJF,aJG,aJH,aK1,aK6,\n aK7,aK8,aK9,aKA,aKB,aKC,aKE,aK F,aKG,aKH,aL1,aL6,aL7,aL8,aL9,aLA,aLB,aLC,\n aLE,aLF,aLG,aLH,f1,f2,f 3,f4,f5,f6,f7,f8,f9,fA,fB,fC,fD,fE,fF,fG,fH,fI,fJ,\n fK,fL,b1,b6,b7, b8,b9,bA,bB,bC,e1,e6,e7,e8,e9,eA,eB,eC,eD,d12,d62,d72,d82,\n d92,dA2 ,dB2,dC2,dE2,dF2,dG2,dH2,dI2,dJ2,dK2,dL2,d13,d63,d73,d83,d93,dA3,\n \+ dB3,dC3,dE3,dF3,dG3,dH3,dI3,dJ3,dK3,dL3,d14,d64,d74,d84,d94,dA4,dB4,dC 4,\n dE4,dF4,dG4,dH4,dI4,dJ4,dK4,dL4,d15,d65,d75,d85,d95,dA5,dB5,dC5 ,dE5,dF5,\n dG5,dH5,dI5,dJ5,dK5,dL5,d16,d66,d76,d86,d96,dA6,dB6,dC6, dE6,dF6,dG6,dH6,\n dI6,dJ6,dK6,dL6,d17,d67,d77,d87,d97,dA7,dB7,dC7,d E7,dF7,dG7,dH7,dI7,dJ7,\n dK7,dL7,d18,d68,d78,d88,d98,dA8,dB8,dC8,dE 8,dF8,dG8,dH8,dI8,dJ8,dK8,dL8,\n yout,yerr,rs,hmx,hmn,hstrt,temp,sgn ,eqns,maxstps,tiny,yscale,err,htemp,\n hnext,saveDigits,eps,Options, j,prntflg,t,tt,errcntl,ymax,ymaxtemp,x,y,\n errc,x0,y0,xn,f,outpt,mi nstepsize,ftd,inc,rk78interp,rk78step,finished,\n maxstepsize,lastst ep,safety,pgrow,pshrink,errcontrol,SQRT7;\n\nrk78interp := proc(x_rk78 interp::realcons)\n local b1,b6,b7,b8,b9,bA,bB,bC,bE,bF,bG,bH,bI,bJ, bK,bL,xF,xS,yF,\n f1,f6,f7,f8,f9,fA,fB,fC,fE,fF,fG,fH,fI,fJ,fK,fL,d1 2,d62,d72,d82,\n d92,dA2,dB2,dC2,dE2,dF2,dG2,dH2,dI2,dJ2,dK2,dL2,d13 ,d63,d73,d83,d93,dA3,\n dB3,dC3,dE3,dF3,dG3,dH3,dI3,dJ3,dK3,dL3,d14, d64,d74,d84,d94,dA4,dB4,dC4,\n dE4,dF4,dG4,dH4,dI4,dJ4,dK4,dL4,d15,d 65,d75,d85,d95,dA5,dB5,dC5,dE5,dF5,\n dG5,dH5,dI5,dJ5,dK5,dL5,d16,d6 6,d76,d86,d96,dA6,dB6,dC6,dE6,dF6,dG6,dH6,\n dI6,dJ6,dK6,dL6,d17,d67 ,d77,d87,d97,dA7,dB7,dC7,dE7,dF7,dG7,dH7,dI7,dJ7,\n dK7,dL7,d18,d68, d78,d88,d98,dA8,dB8,dC8,dE8,dF8,dG8,dH8,dI8,dJ8,dK8,dL8,\n s,t,jF,jM ,jS,n,h,data,xx,ys,saveDigits;\n options `Copyright 2007 by Peter St one`;\n \n data := SOLN_;\n saveDigits := Digits;\n Digits := \+ max(trunc(evalhf(Digits)),Digits+5);\n xx := evalf(x_rk78interp);\n \+ n := nops(data);\n if (data[1,1]data[n,1] or xx da ta[1,1])) then\n error \"independent variable is outside the inte rpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end i f;\n\n d12 := d12_; d62 := d62_; d72 := d72_; d82 := d82_; d92 := d9 2_; dA2 := dA2_;\n dB2 := dB2_; dC2 := dC2_; dE2 := dE2_; dF2 := dF2 _; dG2 := dG2_; dH2 := dH2_;\n dI2 := dI2_; dJ2 := dJ2_; dK2 := dK2_ ; dL2 := dL2_; d13 := d13_; d63 := d63_;\n d73 := d73_; d83 := d83_; d93 := d93_; dA3 := dA3_; dB3 := dB3_; dC3 := dC3_;\n dE3 := dE3_; \+ dF3 := dF3_; dG3 := dG3_; dH3 := dH3_; dI3 := dI3_; dJ3 := dJ3_;\n d K3 := dK3_; dL3 := dL3_; d14 := d14_; d64 := d64_; d74 := d74_; d84 := d84_;\n d94 := d94_; dA4 := dA4_; dB4 := dB4_; dC4 := dC4_; dE4 := \+ dE4_; dF4 := dF4_;\n dG4 := dG4_; dH4 := dH4_; dI4 := dI4_; dJ4 := d J4_; dK4 := dK4_; dL4 := dL4_;\n d15 := d15_; d65 := d65_; d75 := d7 5_; d85 := d85_; d95 := d95_; dA5 := dA5_;\n dB5 := dB5_; dC5 := dC5 _; dE5 := dE5_; dF5 := dF5_; dG5 := dG5_; dH5 := dH5_;\n dI5 := dI5_ ; dJ5 := dJ5_; dK5 := dK5_; dL5 := dL5_; d16 := d16_; d66 := d66_;\n \+ d76 := d76_; d86 := d86_; d96 := d96_; dA6 := dA6_; dB6 := dB6_; dC6 \+ := dC6_;\n dE6 := dE6_; dF6 := dF6_; dG6 := dG6_; dH6 := dH6_; dI6 : = dI6_; dJ6 := dJ6_;\n dK6 := dK6_; dL6 := dL6_; d17 := d17_; d67 := d67_; d77 := d77_; d87 := d87_;\n d97 := d97_; dA7 := dA7_; dB7 := \+ dB7_; dC7 := dC7_; dE7 := dE7_; dF7 := dF7_;\n dG7 := dG7_; dH7 := d H7_; dI7 := dI7_; dJ7 := dJ7_; dK7 := dK7_; dL7 := dL7_;\n d18 := d1 8_; d68 := d68_; d78 := d78_; d88 := d88_; d98 := d98_; dA8 := dA8_;\n dB8 := dB8_; dC8 := dC8_; dE8 := dE8_; dF8 := dF8_; dG8 := dG8_; dH 8 := dH8_; \n dI8 := dI8_; dJ8 := dJ8_; dK8 := dK8_; dL8 := dL8_;\n \n # Perform a binary search for the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n \+ if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do; \n if jM = n then jF := n-1; jS := n end if;\n else\n whil e jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM, 1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data ne eded from the list.\n xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 := data[jF,3];\n f6 := data[jF,4];\n f7 := \+ data[jF,5];\n f8 := data[jF,6];\n f9 := data[jF,7];\n fA := data [jF,8];\n fB := data[jF,9];\n fC := data[jF,10];\n fE := data[jF ,11];\n fF := data[jF,12];\n fG := data[jF,13];\n fH := data[jF, 14];\n fI := data[jF,15];\n fJ := data[jF,16];\n fK := data[jF,1 7];\n fL := data[jF,18];\n\n # Calculate the parameters.\n h := \+ xx-xF;\n s := h/(xS-xF);\n b1 := ((((((d18*s+d17)*s+d16)*s+d15)*s+ d14)*s+d13)*s+d12)*s+1;\n b6 := ((((((d68*s+d67)*s+d66)*s+d65)*s+d64 )*s+d63)*s+d62)*s;\n b7 := ((((((d78*s+d77)*s+d76)*s+d75)*s+d74)*s+d 73)*s+d72)*s;\n b8 := ((((((d88*s+d87)*s+d86)*s+d85)*s+d84)*s+d83)*s +d82)*s;\n b9 := ((((((d98*s+d97)*s+d96)*s+d95)*s+d94)*s+d93)*s+d92) *s;\n bA := ((((((dA8*s+dA7)*s+dA6)*s+dA5)*s+dA4)*s+dA3)*s+dA2)*s;\n bB := ((((((dB8*s+dB7)*s+dB6)*s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := ((((((dC8*s+dC7)*s+dC6)*s+dC5)*s+dC4)*s+dC3)*s+dC2)*s;\n bE := ( (((((dE8*s+dE7)*s+dE6)*s+dE5)*s+dE4)*s+dE3)*s+dE2)*s;\n bF := (((((( dF8*s+dF7)*s+dF6)*s+dF5)*s+dF4)*s+dF3)*s+dF2)*s;\n bG := ((((((dG8*s +dG7)*s+dG6)*s+dG5)*s+dG4)*s+dG3)*s+dG2)*s;\n bH := ((((((dH8*s+dH7) *s+dH6)*s+dH5)*s+dH4)*s+dH3)*s+dH2)*s;\n bI := ((((((dI8*s+dI7)*s+dI 6)*s+dI5)*s+dI4)*s+dI3)*s+dI2)*s;\n bJ := ((((((dJ8*s+dJ7)*s+dJ6)*s+ dJ5)*s+dJ4)*s+dJ3)*s+dJ2)*s;\n bK := ((((((dK8*s+dK7)*s+dK6)*s+dK5)* s+dK4)*s+dK3)*s+dK2)*s;\n bL := ((((((dL8*s+dL7)*s+dL6)*s+dL5)*s+dL4 )*s+dL3)*s+dL2)*s;\n \n # Calculate the interpolated y value.\n \+ t := b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + b E*fE\n + bF*fF + bG*fG + bH*fH + bI*fI + bJ*fJ + \+ bK*fK + bL*fL;\n ys := yF + t*h;\n Digits := saveDigits;\n evalf (ys);\nend proc: # of rk78interp\n\nrk78step := proc(x_rk78step::realc ons)\n local c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,a21,a31,a32,a41,a43,a51,a 53,a54,\n a61,a63,a64,a65,a71,a74,a75,a76,a81,a84,a85,a86,a87,a91,a9 4,a95,a96,\n a97,a98,aA1,aA4,aA5,aA6,aA7,aA8,aA9,aB1,aB4,aB5,aB6,aB7 ,aB8,aB9,aBA,\n aC1,aC4,aC5,aC6,aC7,aC8,aC9,aCA,aCB,f1,f2,f3,f4,f5,f 6,f7,f8,f9,fA,fB,\n fC,b1,b6,b7,b8,b9,bA,bB,bC,xk,yk,t,jF,jM,jS,n,h, data,fn,xx,ys,saveDigits;\n options `Copyright 2004 by Peter Stone`; \n \n data := SOLN_;\n\n saveDigits := Digits;\n Digits := max (trunc(evalhf(Digits)),Digits+5);\n\n # procedure to evaluate the sl ope field\n fn := proc(X_,Y_)\n local val; \n val := trape rror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) th en\n error \"evaluation of slope field failed at %1\",evalf([X _,Y_],saveDigits);\n end if;\n val;\n end proc;\n\n x x := evalf(x_rk78step);\n n := nops(data);\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent v ariable is outside the interpolation interval: %1\",evalf(data[1,1]).. evalf(data[n,1]);\n end if;\n\n c2 := 0.0625; c3 := c3_; c4 := c4_ ; c5 := 0.39; c6 := c6_; c7 := 0.156;\n c8 := 0.96; c9 := c9_; cA := cA_; cB :=0.95; a21 := c2; a31 := a31_;\n a32 := a32_; a41 := a41_; a43 := a43_; a51 := a51_; a53 := a53_; a54 := a54_;\n a61 := a61_; \+ a64 := a64_; a65 := a65_; a71 := a71_; a74 := a74_; a75 := a75_;\n a 76 := a76_; a81 := a81_; a84 := -1.4; a85 := a85_; a86 := a86_; a87 := a87_;\n a91 := a91_; a94 := a94_; a95 := a95_; a96 := a96_; a97 := \+ a97_; a98 := a98_;\n aA1 := aA1_; aA4 := aA4_; aA5 := aA5_; aA6 := a A6_; aA7 := aA7_; aA8 := aA8_;\n aA9 := aA9_; aB1 := aB1_; aB4 := aB 4_; aB5 := aB5_; aB6 := aB6_; aB7 := aB7_;\n aB8 := aB8_; aB9 := aB9 _; aBA := aBA_; aC1 := aC1_; aC4 := aC4_; aC5 := aC5_;\n aC6 := aC6_ ; aC7 := aC7_; aC8 := aC8_; aC9 := aC9_; aCA := aCA_; aCB := aCB_;\n \+ b1 := b1_; b6 := b6_; b7 := b7_; b8 := b8_; b9 := b9_; bA := bA_; bB \+ := bB_;\n bC := bC_;\n\n # Perform a binary search for the interva l containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n \+ if data[1,1]1 do\n jM := tr unc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end i f;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n e nd do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \+ \n # Get the data needed from the list.\n xk := data[jF,1];\n y k := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk; \n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h );\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t : = a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + \+ a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a 74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a8 1*f1 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + \+ t*h);\n t := a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n \+ f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA 6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n \+ t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + a BA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n t := aC1*f1 + aC4*f4 + aC 5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := \+ fn(xk + h,yk + t*h);\n\n # Calculate the intermediate y value.\n t := b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC;\n \+ ys := yk + t*h;\n \n Digits := saveDigits;\n evalf(ys);\nend pr oc: # of rk78step \n\n # start of main procedure rungk78\n x := lh s(eqn1);\n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs);\n y0 := rhs(eqn2);\n\n # Get the options.\n # \+ Set the default values to start with.\n maxstps := 2000;\n t := Fl oat(1,-Digits);\n hmx := 0.5;\n hstrt := evalf(0.1*10^(-ceil(Digit s/10)));\n hmn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ym axtemp := 0;\n outpt := 'rkinterp';\n prntflg := false;\n Option s := [];\n if nargs>3 then\n Options:=[args[4..nargs]];\n \+ if not type(Options,list(equation)) then\n error \"each option al argument must be an equation\"\n end if;\n if hasoption(O ptions,'maxsteps','maxstps','Options') then\n if not type(maxs tps,posint) then\n error \"\\\"maxsteps\\\" must be a posit ive integer\"\n end if;\n end if;\n if hasoption(Opt ions,'tolerance','t','Options') then \n tt := evalf(t); \n \+ if not type(tt,float) or \n tt>Float(1,-iquo(Digits,2) ) or tthmx) or evalf(hstrttrue then prntflg := false end if; \n \+ end if;\n if nops(Options)>0 then\n error \"%1 is no t a valid option for %2\",op(1,Options), procname;\n end if;\n \+ end if;\n\n if prntflg then\n print(`method: Verner 13 stage, o rder 7-8 .. Maple's dverk78 coefficients`);\n print(`an embedded \+ order 7 scheme provides error control`);\n if outpt='rkinterp' th en\n print(`8 extra stages are used to construct the interpola tion procedure`);\n end if;\n print(``);\n end if;\n\n s aveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5) ;\n \n # procedure to evaluate the slope field\n fn := subs(\{FX Y_=evalf(fxy),X_=x,Y_=y\},\n proc(X_,Y_)\n local val; \n \+ val := traperror(evalf(FXY_));\n if val=lasterror or not type(v al,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val;\n end proc);\n\n ## coefficients by Jim Verner (supplied to Maple for dso lve's dverk78 method)\n # nodes\n c2 := 0.0625;\n c3 := evalf(11 2/1065);\n c4 := evalf(56/355);\n c5 := 0.39;\n c6 := evalf(7/15 );\n c7 := 0.156;\n c8 := 0.96;\n c9 := evalf(14435868/16178861) ;\n cA := evalf(11/12);\n cB := 0.95;\n\n # linking coefficients \n a21 := c2;\n a31 := evalf(18928/1134225);\n a32 := evalf(1003 52/1134225);\n a41 := evalf(14/355);\n a43 := evalf(42/355);\n a 51 := evalf(94495479/250880000);\n a53 := evalf(-352806597/250880000 );\n a54 := evalf(178077159/125440000);\n a61 := evalf(12089/25272 0);\n a64 := evalf(2505377/10685520);\n a65 := evalf(960400/520919 1);\n a71 := evalf(21400899/350000000);\n a74 := evalf(30643298298 99/27126050000000);\n a75 := evalf(-21643947/592609375);\n a76 := \+ evalf(124391943/6756250000);\n a81 := evalf(-15365458811/13609565775 );\n a84 := -1.4;\n a85 := evalf(-8339128164608/939060038475);\n \+ a86 := evalf(341936800488/47951126225);\n a87 := evalf(199332183824 0/380523459069);\n a91 := evalf(-18409112522823765844381573364647084 26954728061551/\n 2991923615171151921596253813483118 262195533733898);\n a94 := evalf(-1476496080404865730363837225290878 0219281424435/\n 2981692102565021975611711269209606363661 854518);\n a95 := evalf(-8753250485021304411186134217852667428626944 04520560000/\n 17021203042889441839557167757596133949543501 1888324169);\n a96 := evalf(7632051964154290925661849798370645637589 377834346780/\n 1734087257418811583049800347581865260479233 950396659);\n a97 := evalf(75198347919711375170485321796523477298993 03513750000/\n 10456773035023175965978907078123498326373390 39997351);\n a98 := evalf(1366042683489166351293315549358278750/\n \+ 144631418224267718165055326464180836641);\n aA1 := evalf( -63077736705254280154824845013881/78369357853786633855112190394368);\n aA4 := evalf(-31948346510820970247215/6956009216960026632192);\n \+ aA5 := evalf(-3378604805394255292453489375/517042670569824692230499952 );\n aA6 := evalf(1001587844183325981198091450220795/184232684207722 503701669953872896);\n aA7 := evalf(18702307523134990076801489027445 3125/25224698849808178010752575653374848);\n aA8 := evalf(1908158550 070998850625/117087067039189929394176);\n aA9 := evalf(-529568182881 56668227044990077324877908565/\n 291277995947743398634982 2224412353951940608);\n aB1 := evalf(-101161065918269095347811579936 85116703/\n 9562819945036894030442231411871744000); \n aB4 := evalf(-9623541317323077848129/3864449564977792573440);\n \+ aB5 := evalf(-4823348333146829406881375/576413233634141239944816);\n \+ aB6 := evalf(6566119246514996884067001154977284529/97030548702184632 5473990863582315520);\n aB7 := evalf(2226455130519213549256016892506 730559375/\n 364880443159675255577435648380047 355776);\n aB8 := evalf(39747262782380466933662225/17560328024314241 64410720256);\n aB9 := evalf(481757714192609553352446838051715480389 66866545122229/\n 19897864205138151465288801659520641189038 52843612160000);\n aBA := evalf(-2378292068163246/47768728487211875) ;\n aC1 := evalf(-3218022174758599831659045535578571/145339675363446 9525663775847094384);\n aC4 := evalf(26290092604284231996745/5760876 126062860430544);\n aC5 := evalf(-697069297560926452045586710000/411 07967755245430594036502319);\n aC6 := evalf(182735782043421346143807 7550902273440/139381013914245317709567680839641697);\n aC7 := evalf( 643504802814241550941949227194107500000/\n 242 124609118836550860494007545333945331);\n aC8 := evalf(16225993815138 0266113750/59091082835244183497007);\n aC9 := evalf(-230282516328735 23818545414856857015616678575554130463402/\n 200131691831 91444503443905240405603349978424504151629055);\n aCA := evalf(795834 1351371843889152/3284467988443203581305);\n aCB := evalf(-5079743279 57860843878400/121555654819179042718967);\n aD1 := evalf(-5490806244 36801105208519835138333/353987109028707139687100885600400);\n aD4 := evalf(29116675312186033956481/5331818957833865866320);\n aD5 := eva lf(-91153092961177216058210567600/7609267653017028089793994539);\n a D6 := evalf(1540775569495234383390307262972464/16475124873359784198583 1445059895);\n aD7 := evalf(-2027488254536386321212021357622300000/ \n 7563800784313191306927092359781550321);\n aD8 := evalf(-707592954577756600025/2430671607007101253926);\n aD 9 := evalf(-315869406877370103440389763510384832076674110731/\n \+ 550845901016714794114516357859531754926300500125);\n aDA := \+ evalf(4305840920849725632512/5066413598663346018375);\n\n # weights \n b1 := evalf(4631674879841/103782082379976);\n b6 := evalf(14327 219974204125/40489566827933216);\n b7 := evalf(272076232401000976562 5000/10917367480696813922225349);\n b8 := evalf(-498533005859375/953 52091037424);\n b9 := evalf(4059320304637772479267050305961754374024 59637909765779/\n 78803919436321841083201886041201537229769 115088303952);\n bA := evalf(-10290327637248/1082076946951);\n bB \+ := evalf(863264105888000/85814662253313);\n bC := evalf(-29746300739 /247142463456);\n\n # error coefficients\n e1 := evalf(-2697700330 9/415128329519904);\n e6 := evalf(-10116376240875/10122391706983304) ;\n e7 := evalf(2634472979394531250000/10917367480696813922225349); \n e8 := evalf(-10537891917578125/1334929274523936);\n e9 := evalf (483817271607736806435859407382949628502464641547815749/\n \+ 394019597181609205416009430206007686148845575441519760);\n eA := ev alf(-20718338541312/5410384734755);\n eB := evalf(863264105888000/85 814662253313);\n eC := evalf(-29746300739/247142463456);\n eD := e valf(45884771325/82380821152);\n\n ## nodes and linking coefficients for 8 extra stages used for interpolation\n if outpt='rkinterp' the n\n SQRT7 := evalf[Digits+3](sqrt(7));\n cF := evalf(1/2-SQR T7/14);\n cG := 0.45;\n cH := 0.1;\n cI := .325;\n \+ cJ := 0.4;\n cK := 0.3;\n cL := 0.7;\n aE1 := b1; aE6 \+ := b6; aE7 := b7; aE8 := b8; aE9 := b9;\n aEA := bA; aEB := bB; a EC := bC;\n aF1 := evalf(923507123432989/20341288146475296 +\n \+ 3728619917660047/7973784953418316032*SQRT7);\n aF6 := evalf(1533012537239841375/7935955098274910336 -\n 110494 56415304617875/194430899907735303232*SQRT7);\n aF7 := evalf(12983 4778101757666015625000/534951006554143882189042101 -\n 82 766411529674389648437500/26212599321153050227263062949*SQRT7);\n \+ aF8 := evalf(13061564753515625/18689009843335104 + \n 310 47286856168359375/25641321505055762688*SQRT7);\n aF9 := evalf(-32 11799428826566849882311586102611111468427562764815533/\n \+ 15445568209519080852307569664075501297034746557307574592 -\n \+ 35609926058546725508440519811766382833790503793377686129/\n \+ 63599398509784450568325286852075593576025427000678248320*SQRT7) ;\n aFA := evalf(37302437685024/53021770400599+15742143124443936/ 12990333748146755*SQRT7);\n aFB := evalf(-5071676622092000/420491 8450412337 -\n 380378998046332000/206041004070204513*SQRT 7);\n aFC := evalf(1100613127343/48439922837376-29746300739/14247 03612864*SQRT7);\n aFE := evalf(3/392-3/392*SQRT7);\n aG1 := evalf(3791756097508153347/82000657682944000000 +\n 82110 4665636321*SQRT7/642242913320960000);\n aG6 := evalf(768457351210 057567857/5182664553975451648000 -\n 62532827932224226599 *SQRT7/2267415742364260096000);\n aG7 := evalf(253006492725129434 765625/1078258516612031004664232 -\n 46193539913722265625 *SQRT7/5503324547053749203536);\n aG8 := evalf(15520930467726675/ 5625380975771648 -\n 223623196267702275*SQRT7/15751066732 1606144);\n aG9 := evalf(-246055732534037739145153390748156193982 1407244475387801507/\n 2594367718068208759940802832632149 373819559344470912000000 +\n 1990914598171605147035694530 39285921263305239484481767*SQRT7/\n 416767572250203215264 447300211189502579457643520000000);\n aGA := evalf(42605915213080 224/16907452296109375 -\n 1106650521763256349*SQRT7/86074 3025983750000);\n aGB := evalf(-61485359208535917/143024437088855 00 +\n 887648262380253891*SQRT7/400468423848794000);\n \+ aGC := evalf(-1539638779949901/263618627686400000);\n aGE := e valf(101277*SQRT7/64000000 - 79893/16000000);\n aGF := evalf(7089 39*SQRT7/16000000);\n aH1 := evalf(-42151219511021783922858596876 67763860057798131121*SQRT7/\n 552490700653053502843066961 2520227037472745107200000 +\n 214649483202843017900825928 522094099475577072470507941/\n 43073556249663683715402607 96661082004089688904200800000);\n aH6 := evalf(118591343024867431 7434870618267722069953058737510283*SQRT7/\n 3000844231717 9171818955614503925786051785131637358800 -\n 311994431911 337356840024036100680775990247322848978459/\n 33609455395 24067243723028824439688037799934743384185600);\n aH7 := evalf(399 32181887340468446859878465078752005970844232914062500*SQRT7/\n \+ 7991406437185379813952210414813050100306894094759398308201 +\n \+ 3543645172418862284693074086858403325990951208091094726562 50/\n 453112744988411035451090330519899940687400895172857 8840749967);\n aH8 := evalf(4482425539475296955559304996688796936 033039629875*SQRT7/\n 20845977587384504244419538387493205 979265982789632 -\n 4632337900520750571763514693783173288 9161714866875/\n 4870742840129263972494180604000816397078 4940556544);\n aH9 := evalf(2257427684900935524736890230539751689 489149601754038401722717509558293702749265180053129*SQRT7/\n1538231996 3668643757680340043617345728033389807810527409513111150183672094056068 1990528000 +\n42492774700711579417354994420731305451245624654719301672 06290592193363892663828255136238663/\n51104152848047584046512223465220 908365985929810714271725745707161059426234354242200368775000);\n \+ aHA := evalf(82674886809376207867730668398503287366098540852*SQRT7/\n \+ 729064214207911394139200255820908786902329141125 -\n \+ 72880049498632524878182125169775730823179168857424/\n \+ 107957585565402264132150807111942262675921815128125);\n aHB := evalf(-14452334021133180240325340727774770157932021057436*SQRT7/\n 42400459244893414400850901677665011873556514674975 +\n \+ 1379482776995886509031984497778742508172264966358576/\n \+ 890409644142761702417868935230965249344686808174475);\n \+ aHC := evalf(24007793882669277531292945295458719370616706273*SQRT7/ \n 3052786573498438708373913400079618470033568180000 -\n \+ 83884827511307050547839026717499224825563955775903/\n \+ 2564340721738688515034087256066879514828197271200000);\n \+ aHE := evalf(-4114436729416819286145536389728774047607/\n \+ 456542312392180862139685668388139491300000 +\n 1673093 837200937887039405670571696062733*SQRT7/\n 91308462478436 1724279371336776278982600000);\n aHF := evalf(1001373308041744989 114984611143231300353/\n 40206851375447746381620044659182 739290625 -\n 892131449472993412180461043706539941657*SQR T7/\n 25732384880286557684236828581876953146000);\n \+ aHG := evalf(-2975918446967643161447796202231979904*SQRT7/\n \+ 141528116841576067263302557200323242303 +\n 533032087 36809836098042063038756642432/\n 707640584207880336316512 786001616211515);\n aI1 := evalf(-674107528569903747657*SQRT7/194 736308727800627200000 +\n 6676290817642855930112293/17351 0051076470358835200000);\n aI6 := evalf(-227711699316765384611310 459*SQRT7/7040098361067108075752652800 +\n 86076474210930 2032039902111/7040098361067108075752652800);\n aI7 := evalf(-3041 94866461696889173828125*SQRT7/7899680270269138271354212352 +\n \+ 54888690084350082907540673828125/3650481751292720140884138298920 96);\n aI8 := evalf(-9661338110897182125*SQRT7/209930810853020925 952 +\n 17032572234499325505625/51013187037284085006336); \n aI9 := evalf(-399866634050793590138577034430419123328121213083 504583*SQRT7/\n 15662284975171767637632388396363220624764 129071529984000 -\n 3553613878989287978546743631019160506 304244781237959476464169103/\n 90144623003970691762221902 742145266933120080348307809053900800000);\n aIA := evalf(17668130 783823819/66589350581600000);\n aIB := evalf(66167102143387747604 7*SQRT7/9714173999255163166400 -\n 6515524331167687127126 9/116570087991061957996800);\n aIC := evalf(-72959420171354194073 7*SQRT7/358097856689988567040000 +\n 62747303504529774530 387/5371467850349828505600000);\n aIE := evalf(3949144173/1143910 400000 - 908415729*SQRT7/3145753600000);\n aIF := evalf(319287235 181733/9769566771200000 + 29511701788023*SQRT7/781565341696000);\n \+ aIG := evalf(908415729*SQRT7/64849710464 - 2317999437/23581712896); \n aIH := evalf(9992573019*SQRT7/352964993024 + 112099727493/1764 824965120);\n aJ1 := evalf(-146095905498393119*SQRT7/289715425124 52028125 +\n 362058929348034963652/8604548126198252353125 );\n aJ6 := evalf(-1265405169411103125627*SQRT7/26855843967693741 133700 +\n 3975969853211105248983/26855843967693741133700 );\n aJ7 := evalf(-12657909213874869625000000*SQRT7/2256500467825 90131286240929 +\n 415816207712929843732812500000/2317200 330410418058178408099901);\n aJ8 := evalf(-1449590403533375*SQRT7 /21622207233549366 +\n 401012292446311250/126489912316263 7911);\n aJ9 := evalf(-599961235969408402243747490372127804608935 75326973*SQRT7/\n 161316564304213610159330172234270842311 3370837903250 +\n 454533103388283279317267935846326248185 9874938464112848008/\n 1719372234420217356914938025324731 19608154450127235048396875);\n aJA := evalf(596839002960384/33814 90459221875);\n aJB := evalf(15060740399158849536*SQRT7/151783968 738361924475 -\n 233279804085211463168/455351906215085773 425);\n aJC := evalf(-4054391044424961*SQRT7/1366034914741472500 \+ +\n 245337047543712611/20490523721122087500);\n aJE \+ := evalf(10035998/3456028125 - 1453856*SQRT7/3456028125);\n aJF : = evalf(28388719184/596287034375 + 3935951656*SQRT7/71554444125);\n \+ aJG := evalf(93046784*SQRT7/4559745267 - 254314496/3256960905);\n \+ aJH := evalf(15992416*SQRT7/387778923 + 2125088/55396989);\n \+ aK1 := evalf(-408385534705961*SQRT7/145260583712400000 +\n \+ 374919208039108066769/10197982964383113900000);\n aK6 := evalf( -1842890934880471474773*SQRT7/70154041384995895206400 +\n \+ 91402574292269720401167/859387006966199716278400);\n aK7 := eval f(-2016276423759027541015625*SQRT7/64471441937882894653211694 +\n \+ 33841871953716766022861328125/257466703378935339797600899989) ;\n aK8 := evalf(-103445455138314625*SQRT7/2767642525894318848 + \n 350725547323759375/1124354776144567032);\n aK9 := evalf(-167708663236226679032764579220523036527050471387*SQRT7/\n \+ 8088260500191680872887407280342617343355065504000 -\n \+ 16065566382441552641715569501610915152347902393579453431911/\n \+ 3056661750080386412293223156132855459700523557817511971500 00);\n aKA := evalf(901046813736528/3381490459221875);\n aKB := evalf(1199511517980117216*SQRT7/21683424105480274925 -\n \+ 79948431067612848912/151783968738361924475);\n aKC := evalf(- 5904670442992239*SQRT7/3568417736467520000 +\n 2337899411 211529353/218565586358635600000);\n aKE := evalf(367198237/110592 900000 - 3242183*SQRT7/13824112500);\n aKF := evalf(126616972699/ 4770296275000 + 35109599707*SQRT7/1144871106000);\n aKG := evalf( 7410704*SQRT7/651392181 - 298713632/3256960905);\n aKH := evalf(5 094859*SQRT7/221587956 + 42920003/553969890);\n aL1 := evalf(2767 27826458195951*SQRT7/75680764114160400000 +\n 27993284828 754981193/510845157770582700000);\n aL6 := evalf(2396869514758244 044683*SQRT7/70154041384995895206400 +\n 1359397577947631 66091/474013793141864156800);\n aL7 := evalf(26223752051540893964 84375*SQRT7/64471441937882894653211694 +\n 25538152595038 2596240234375/705817950170703033255683247);\n aL8 := evalf(134541 471320113375*SQRT7/2767642525894318848 +\n 55500682476312 5/510245713256409);\n aL9 := evalf(113641767182046923760020640897 484653184317971780717*SQRT7/\n 42139837205998657347743391 93058503635887989127584000 -\n 19725249536158413435648903 585583405898983584276673979718229/\n 56142766838211179001 304098786113671708785126572158383150000);\n aLA := evalf(70746002 50608/6273637215625);\n aLB := evalf(-1560088302368475936*SQRT7/2 1683424105480274925 -\n 122630185337518052432/65050272316 440824775);\n aLC := evalf(7679632208088369*SQRT7/356841773646752 0000 +\n 468087818175204739/13381566511753200000);\n \+ aLE := evalf(1321004573/110592900000 + 4216793*SQRT7/13824112500);\n \+ aLF := evalf(-164678417029/4770296275000 - 45663651397*SQRT7/1144 871106000);\n aLG := evalf(-9638384*SQRT7/651392181 + 57814624/65 1392181);\n aLH := evalf(-6626389*SQRT7/221587956 - 46233929/5539 69890);\n end if;\n \n xstart := evalf(x0);\n xend:= evalf(xn) ;\n \n sgn := sign(xend-xstart);\n h := sgn*hstrt;\n\n eps := \+ evalf(t);\n safety := 0.9;\n pgrow := -0.125;\n pshrink := -0.14 285714285714285714;\n errcontrol := 0.000001101996057; #(5/safety)^( 1/pgrow)\n\n tiny := Float(1,-3*saveDigits);\n \n xk := evalf(x0) ;\n yk := evalf(y0);\n \n if ymaxtemp<>0 then\n ymax := abs (evalf(ymaxtemp))\n else\n ymax := max(abs(yk),tiny)\n end if ;\n \n soln := NULL;\n finished := false;\n f1 := fn(xk,yk);\n \n for k from 1 to maxstps do\n if errcntl=0 then yscale := max (abs(yk),abs(f1*h),tiny)\n elif errcntl=1 then yscale := max(abs( yk),tiny)\n elif errcntl=2 then yscale := abs(ymax)\n else y scale := max(abs(f1*h),tiny) end if;\n \n if abs(h)>=hmx the n\n h := sgn*hmx;\n maxstepsize := true;\n else\n maxstepsize := false;\n end if;\n if abs(h)<=hmn th en\n h := sgn*hmn;\n minstepsize := true;\n else \n minstepsize := false;\n end if;\n if (xk+h-xend)* (xk+h-xstart)>0 then \n h := xend-xk;\n laststep := tr ue;\n else\n laststep := false;\n end if;\n\n # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + c2* h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c 3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 \+ + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk \+ + c8*h,yk + t*h);\n t := a91*f1 + a94*f4 + a95*f5 + a96*f6 + a 97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n \+ fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB4*f4 + aB5* f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + \+ aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA\n \+ + aCB*fB;\n fC := fn(x k + h,yk + t*h);\n\n yout := yk + (b1*f1 + b6*f6 + b7*f7 + b8* f8 + b9*f9 + bA*fA + bB*fB + bC*fC)*h;\n\n # error estimate\n \+ t := aD1*f1 + aD4*f4 + aD5*f5 + aD6*f6 + aD7*f7 + aD8*f8 + aD9 *f9 + aDA*fA;\n fD := fn(xk + h,yk + t*h);\n\n yerr := (e1*f1 + e6*f6 + e7*f7 + e8*f8 + e9*f9 + eA*fA + eB*fB + eC*fC + eD*f D)*h;\n \n err := abs(yerr/yscale)/eps;\n if e rr<=1.0 or minstepsize then break end if;\n \n # Shrin k, but not too much.\n if prntflg then\n print(`red ucing step-size and repeating step`);\n end if;\n htem p := safety*h*err^pshrink;\n if h>=0 then\n h := ma x(htemp,0.1*h)\n else\n h := min(htemp,0.1*h)\n \+ end if;\n if maxstepsize then maxstepsize := false end if ;\n if abs(h)<=hmn then\n h := sgn*hmn;\n \+ minstepsize := true;\n end if;\n end do;\n\n if ou tpt='points' or outpt='rkstep' then\n soln := soln,[xk,yk];\n \+ else # extra stages needed for interpolation\n t := aE1*f 1 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC;\n \+ fE := fn(xk + h,yk + t*h);\n t := aF1*f1 + aF6*f6 + aF7* f7 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + aFC*fC\n \+ + aFE*fE;\n \+ fF := fn(xk + cF*h,yk + t*h);\n t := aG1*f1 + aG6*f6 + aG7 *f7 + aG8*f8 + aG9*f9 + aGA*fA + aGB*fB + aGC*fC\n \+ + aGE*fE + aGF*fF;\n \+ fG := fn(xk + cG*h,yk + t*h);\n t := aH1*f1 + aH6*f6 + aH 7*f7 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + aHC*fC\n \+ + aHE*fE + aHF*fF + aHG*fG;\n \+ fH := fn(xk + cH*h,yk + t*h);\n\n t := aI1*f1 + aI6*f6 + aI7*f7 + aI8*f8 + aI9*f9 + aIA*fA + aIB*fB + aIC*fC\n \+ + aIE*fE + aIF*fF + aIG*fG + aIH*fH;\n fI := fn(xk + cI*h,yk + t*h);\n t := aJ1*f1 + aJ6*f6 \+ + aJ7*f7 + aJ8*f8 + aJ9*f9 + aJA*fA + aJB*fB + aJC*fC\n \+ + aJE*fE + aJF*fF + aJG*fG + aJH*fH; \n fJ := fn(xk + cJ*h,yk + t*h);\n\n t := aK1*f1 + aK6 *f6 + aK7*f7 + aK8*f8 + aK9*f9 + aKA*fA + aKB*fB + aKC*fC\n \+ + aKE*fE + aKF*fF + aKG*fG + aKH* fH;\n fK := fn(xk + cK*h,yk + t*h);\n t := aL1*f1 + aL 6*f6 + aL7*f7 + aL8*f8 + aL9*f9 + aLA*fA + aLB*fB + aLC*fC\n \+ + aLE*fE + aLF*fF + aLG*fG + aLH *fH;\n fL := fn(xk + cL*h,yk + t*h);\n soln := soln,[x k,yk,f1,f6,f7,f8,f9,fA,fB,fC,fE,fF,fG,fH,fI,fJ,fK,fL];\n end if; \n \n if err>errcontrol then\n hnext := safety*h*err ^pgrow;\n inc := false;\n else\n hnext := 5*h;\n \+ inc := true;\n end if;\n \n xk := xk + h;\n yk \+ := yout;\n f1 := fn(xk,yk);\n if prntflg then\n prin t(`abs err estimate -> `,evalf(abs(yerr),5),`abs err bound -> `,evalf( abs(yscale)*eps,5));\n print('step',k,` `,h,` `,[xk,yk]); \n if laststep then\n print(`last step`);\n \+ elif inc then\n print(`increasing step-size by a factor of 5`)\n elif maxstepsize then\n print(`used maximum \+ step-size`)\n elif not minstepsize then\n print(`us ing error to adjust step-size`)\n else \n print(`us ed minimum step-size`)\n end if;\n print(``);\n e nd if;\n \n if (xk-xend)*(xend-xstart)>=0 then\n fin ished := true;\n break;\n end if;\n\n if abs(yk)>yma x then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n if not finished and k>=maxstps then\n error \"reached maximum numbe r of steps before reaching end of interval\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln ],FXY_=fxy,X_=x,Y_=y,c3_=c3,c4_=c4,c6_=c6,\n c9_=c9,cA_=cA,a31 _=a31,a32_=a32,a41_=a41,a43_=a43,a51_=a51,\n a53_=a53,a54_=a54 ,a61_=a61,a64_=a64,a65_=a65,a71_=a71,a74_=a74,\n a75_=a75,a76_ =a76,a81_=a81,a85_=a85,a86_=a86,a87_=a87,a91_=a91,\n a94_=a94, a95_=a95,a96_=a96,a97_=a97,a98_=a98,aA1_=aA1,aA4_=aA4,\n aA5_= aA5,aA6_=aA6,aA7_=aA7,aA8_=aA8,aA9_=aA9,aB1_=aB1,aB4_=aB4,\n a B5_=aB5,aB6_=aB6,aB7_=aB7,aB8_=aB8,aB9_=aB9,aBA_=aBA,aC1_=aC1,\n \+ aC4_=aC4,aC5_=aC5,aC6_=aC6,aC7_=aC7,aC8_=aC8,aC9_=aC9,aCA_=aCA,\n \+ aCB_=aCB,b1_=b1,b6_=b6,b7_=b7,b8_=b8,b9_=b9,bA_=bA,bB_=bB,bC_=b C\};\n return subs(eqns,eval(rk78step));\n elif outpt='rkinterp ' then\n d12 := evalf(3564368030219839739297779161100690284460411 5504781863583325615*SQRT7/\n 3827319940990761595477887402955165 41397461808306498896786042894 -\n 49913430094603751641566666553 2904357414491300955138537955224539656077/\n 4367507877462197687 0636364310082574605029956793087815107842498805916);\n d62 := eval f(-2368597088783713017630215327405106803353341354375289258890292976362 5*\n SQRT7/4701246246920066234198399235939078612164900309778370 5034965814997192 -\n 318555525426354785267263601778513469051754 900650813057635058169612625/\n 27384759388309385814205675549345 13291586054430445900818286758723586434);\n d72 := evalf(-51259308 379995267859058610262718392599578938940008688345921713867187500000\n \+ *SQRT7/144457692387411698446617427382693665797531195246660764237 040764885295387027 -\n 9191902943338743687894134552913884099193 96531032571289112707441406250000000/\n 112195474420889752460206 20193389208043608256164157319355743499406091275059097);\n d82 := \+ evalf(2680822521359459244350081131955222003732783886983840176384025195 3125*\n SQRT7/3601181207724335064530774666694061429863907960106 427575589521043396 +\n 1719347193692819799929772970982993738808 96289047165344616861328125/\n 100032811325675974014743740741501 706385108554447400765988597806761);\n d92 := evalf(-5791282363694 6473834949306239340766013198183661281840867605716405127576561609301240 11293784825753160970893*SQRT7/\n78960491752622616892134852743469023966 5375459598715531094020245912074193807136326057747285010721816047996 - \n37142425507719738213341950069205380303694158659572836293946045413460 539828251623048052653226120876208741/\n2193346993128406024781523687318 5839990704873877742098085945006830890949827976009057159646805853383779 111);\n dA2 := evalf(11087620167925462303787199386406600593938289 6536227671113630596096*SQRT7\n /8188566659879153019840968724822 760416805063935320460603738237913 +\n 2815976631631622644232771 54433242636609627963296730630613584596992/\n 900742332586706832 18250655973050364584855703288525066641120617043);\n dB2 := evalf( -163347330891545876403903842900594992244726299935020978849222045568000 *\n SQRT7/11404348058165283147477049669067558933009760570649783 842405618582767 -\n 7165783208171831034061757729453833110564842 01637487951993884383744000/\n 216682613105140379802063943712283 619727185450842345893005706753072573);\n dC2 := evalf(38194153832 18199980396074693157583421412619088899955423132510917*SQRT7/\n \+ 22287015072756949499855895654309880045443486828417763716847159592 +\n \+ 220462599128642020502802009787550092329168455670656206543685061 /\n 55717537681892373749639739135774700113608717071044409292117 89898);\n dE2 := evalf(402585847555372253030773794622450357040040 289344403163858*SQRT7/\n 42950367130019710520172237601420073740 20655560556027616721 +\n 27214893119170627331308757568479278954 77861273414985588679/\n 472454038430216815721894613615620811142 27211166116303783931);\n dF2 := evalf(-12349243040856320027880115 681345382618617915842794662375528*SQRT7/\n 16437794827538407729 94246130424718871538769412064652544671 +\n 29553726321805022820 241612807131610602365379038713689058228/\n 16437794827538407729 94246130424718871538769412064652544671);\n dG2 := evalf(-35765200 672383149604976200334469073612125825077957568000000*SQRT7/\n 49 31338448261522318982738391274156614616308236193957634013 +\n 12 85174376823368046557017759143675528393594918717610624000000/\n \+ 162734168792630236526430366912047168282338171794400601922429);\n \+ dH2 := evalf(-53809165379932608607360237125658599337620383469797200000 0*SQRT7/\n 1431678904333990350672407920047335791340218520185342 538907 +\n 3167556144993275958581444904889468273539894425097052 4500000/\n 1431678904333990350672407920047335791340218520185342 538907);\n dI2 := evalf(-1730690754954406988439069777501817868574 81132028743640678400*SQRT7/\n 429503671300197105201722376014200 7374020655560556027616721 +\n 139381501034708670945406178143889 65150457511215120796621209600/\n 558354772690256236762239088818 46095862268522287228359017373);\n dJ2 := evalf(332850677853640526 1654129899831216571480624909539443236125*SQRT7/\n 1590754338148 87816741378657783037310148913168909482504323 -\n 41519259552832 447855406165498677935500678562865236277287875/\n 63630173525955 1266965514631132149240595652675637930017292);\n dK2 := evalf(1497 118870780096785653851352791263510405606027720535895500*SQRT7/\n \+ 53025144604962605580459552594345770049637722969827501441 -\n 1 0810719405586300269221788426869054893442683433666843966500/\n 5 3025144604962605580459552594345770049637722969827501441);\n dL2 : = evalf(1185358024193049429204894939437968202309486148704187724700*SQR T7/\n 159075433814887816741378657783037310148913168909482504323 -\n 1872438833482604880957329476490662693288227829157073464270 0/\n 1113528036704214717189650604481261171042392182366377530261 );\n d13 := evalf(-2462309457351138923393725856900306697668128104 95003823744255113735*SQRT7/\n 313457503167143374669638978302028 047404521221003022596467769130186 +\n 3231074952031261645234323 78313687072540527571660364270765036005492591/\n 503943216630253 5792765734343471066300580379629971670973981826785298);\n d63 := e valf(48224465738913401109111657520645193884053404474223761391463039244 625*\n SQRT7/11347835768427746082547860224680534581087690402913 308111888300171736 +\n 4472108436078443467778472980115895869902 3144255148014082283092570062625/\n 5476951877661877162841135109 869026583172108860891801636573517447172868);\n d73 := eval f(35410563311992276795325987099732138225386974424979970144159024151855 4687500000*SQRT7/\n 1183108500652901810277796730264261122881780 48907015165910136386441056921975113 +\n 67940851965291117811367 357780127224374270905887018262802541051081181640625000000/\n 11 8141834565196909340597130636388360699194937408576572815979048746141126 37229141);\n d83 := evalf(-26456361535933405820655294979290299863 007510302862110709158453404296875*\n SQRT7/42133820130374720255 0100636003205187294077231332452026343973962077332 -\n 762500956 87711426175707444721549275927850831457556362286280073529296875/\n \+ 6320073019556208038251509540048077809411158469986780395159609431159 98);\n d93 := evalf(307745337126029212059142399973448631566530326 0173440817411443098308014249943618454887532557145872390493628329*SQRT7 /497451098041522486420449572283854850989186539547190784589232754924606 74209849588541638078955675474411023748 +\n1267079071292303233179256524 4718181749790218683950038864605441245430452908531872827577086602928164 58666030863/1065966638660405328043820512036831823548256870458265966976 9273319813001616396340401779588347644744516647946);\n dA3 := eval f(-8510516611931167853725751534690781154162356805539179806246016917401 6*\n SQRT7/7451595660490029248055281539588711979292608181141619 14940179650083 -\n 25696240370095559740515043739747545733727108 2383744977126104318773248/\n 1170965032362718881837258527649654 739603124142750825866334568021559);\n dB3 := evalf(47510569498982 918125134697696975104131967515527218789537205684352000*\n SQRT7 /393253381316044246464725850657502032172750364505164960082952364923 + \n 150897521680799186986973522562260953677284916446359064398733 016553216000/\n 65004783931542113940619183113685085918155635252 7037679017120259217719);\n dC3 := evalf(-225512762289712345687608 177797492663198173982033850914510537775289*\n SQRT7/15600910550 9298646498991269580169160318104407798924346017930117144 -\n 928 50310609122940672342183074126380973594493023226754287693593983/\n \+ 33430522609135424249783843481464820068165230242626645575270739388); \n dE3 := evalf(-213931750513121240897311333948469797620487410133 479950210474*SQRT7/\n 27058731291912417627708509688894646456330 1300315029739853423 -\n 602655454921832537181960288056651457544 1175091155923561220047/\n 2976460442110365939047936065778411110 196314303465327138387653);\n dF3 := evalf(93747358386320067829002 3199702129127111060390461868310702712*SQRT7/\n 1479401534478456 6956948215173822469843848924708581872902039 -\n 224352518124006 3021054547606023596942176560700713986922286012/\n 1479401534478 4566956948215173822469843848924708581872902039);\n dG3 := evalf(2 715059598470792261411620674740552998114611488544663872000000*SQRT7/\n \+ 44382046034353700870844645521467409531546774125745618706117 -\n 97562014525403177062257730233870040805011233298292327296000000 /\n 14646075191336721287378733022084245145410435461496054173018 61);\n dH3 := evalf(408483912305568790490948742180409553333366096 46353788000000*SQRT7/\n 128851101390059131560516712804260221220 61966681668082850163 -\n 24046009957941841085533698160934896584 00897946481484185500000/\n 128851101390059131560516712804260221 22061966681668082850163);\n dI3 := evalf(170797506941086482591181 116160029856187748421507562731687116800*SQRT7/\n 50251929542123 0613086015179936614862760416700585055231156357 -\n 146960436005 0531892734122746115860001716171503446532235375411200/\n 5025192 95421230613086015179936614862760416700585055231156357);\n dJ3 := \+ evalf(-252678416666023204018532478629807794349483090715026166341375*SQ RT7/\n 14316789043339903506724079200473357913402185201853425389 07 +\n 20673550498828075805888018847623568666031974747941046059 22875/\n 286335780866798070134481584009467158268043704037068507 7814);\n dK3 := evalf(-795560158652028881526157940792991314731592 433374109190961500*SQRT7/\n 33405841101126441515689518134437835 13127176547099132590783 +\n 24001196016558020249137334006257368 893543757664440775397285500/\n 10021752330337932454706855440331 350539381529641297397772349);\n dL3 := evalf(-6298922792250297070 87375521420205683954737389885991590309100*SQRT7/\n 100217523303 37932454706855440331350539381529641297397772349 +\n 12858429744 33897654229156181372139355262370475712225168576900/\n 100217523 30337932454706855440331350539381529641297397772349);\n d14 := eva lf(133955340876910975521865058804930854478181657243056758022875707595* SQRT7/\n 447796433095919106670912826145754353435030315718603709 23967018598 -\n 15942899352571795873243512290979205421984422911 4153042132964106856070471/\n 7861514179431955836714545575814863 42890539222275580671941164978506488);\n d64 := evalf(-76082158192 5611346296739540636503375531588844487442872536857709497625*\n S QRT7/47012462469200662341983992359390786121649003097783705034965814997 192 -\n 1988435643032622197675508708165275213546645664895634661 6516634571272397625/\n 3067093051490651211191035661526654886576 38096209940891648116977041680608);\n d74 := evalf(-19264167080786 7235686269180225709354160799250354290899373597571538085937500000*SQRT7 /\n 16901550009327168718254239003775158898311149843859309415733 769491579560282159 -\n 3776071555418624364372291247477252444250 786830809446983798340124914005126953125000/\n 82699284195637836 538417991445471852489436456186003600971185334122298788460603987);\n \+ d84 := evalf(100750116608204859903313329960826963417814591192968820 314883670072265625*\n SQRT7/42133820130374720255010063600320518 7294077231332452026343973962077332 +\n 484330218915220688426360 0323195414737330457281426178710961574794533203125/\n 5056058415 644966430601207632038462247528926775989424316127687544927984);\n d9 4 := evalf(-1674205953883007036712509513438212154537170893111803381426 143889123691644293464256441993705518690601901111333*SQRT7/710644425773 6035520292136746912212156988379136388439779846182213208667744264226934 519725565096496344431964 -\n563381953704955979341003510095208838103957 727432620573796804991228957665352906175788066319539947839934746531703/ 5969413176498269837045394867406258211870238474566289415070793059095280 90518195062499656947468105692932284976);\n dA4 := evalf(462991826 79347465106460276860537873218520453497703926889996052319232*\n \+ SQRT7/1064513665784289892579325934226958854184658311591659878485970928 69 +\n 14281664055712408136475245264915777099888212847111472750 534674661140736/\n 81967552265390321728608096935475831772218689 99255781064341976150913);\n dB4 := evalf(-52469107253716041764372 15470414409301918039054299216617679970826112000*\n SQRT7/114043 48058165283147477049669067558933009760570649783842405618582767 -\n \+ 119810062286262954625607969415051155087049410179980626307932201382 1216000/\n 6500478393154211394061918311368508591815563525270376 79017120259217719);\n dC4 := evalf(122684168939145220693552574191 426700519930119672305467038075627253*SQRT7\n /22287015072756949 499855895654309880045443486828417763716847159592 +\n 4128407656 4951970958647826412373517915122082928531250158904168376423/\n 1 872109266111583757987895234962029923817252893587092152215161405728);\n dE4 := evalf(116383830142974352559205642901851452389500804492627 501586498*SQRT7/\n 38655330417017739468155013841278066366185900 045004248550489 +\n 4469818265075669076176973572725235246798406 3731890113472400110/\n 2976460442110365939047936065778411110196 314303465327138387653);\n dF4 := evalf(-3570051488865733757664540 840502648930521034590332740852841768*SQRT7/\n 14794015344784566 956948215173822469843848924708581872902039 +\n 8543707845705682 942507623072572991013191256249879172243240468/\n 14794015344784 566956948215173822469843848924708581872902039);\n dG4 := evalf(-1 0339387401121986568134497304353564371909018441162307008000000*SQRT7/\n 44382046034353700870844645521467409531546774125745618706117 + \n 371531978296234614900819651625346784235446910086141052544000 000/\n 14646075191336721287378733022084245145410435461496054173 01861);\n dH4 := evalf(-15555730043023772447793053558487629093158 2349335611732000000*SQRT7/\n 1288511013900591315605167128042602 2122061966681668082850163 +\n 915711067802817098240193908402375 1427627959028125420984500000/\n 1288511013900591315605167128042 6022122061966681668082850163);\n dI4 := evalf(-650424614032174093 791051728417050717482161451339083515867955200*SQRT7/\n 50251929 5421230613086015179936614862760416700585055231156357 +\n 688121 4659525582008629854370912320640539588082195871903822643200/\n 5 02519295421230613086015179936614862760416700585055231156357);\n d J4 := evalf(9622404013833057592810682491267196094169132451864190692511 25*SQRT7/\n 143167890433399035067240792004733579134021852018534 2538907 -\n 641003207488102877239948155407769061199127798684604 8477664625/\n 1908905205778653800896543893396447721786958026913 790051876);\n dK4 := evalf(43280316339671395592940084052775275610 0563709091898459035500*SQRT7/\n 4772263014446634502241359733491 11930446739506728447512969 -\n 11111448857540695169781464761711 2481576947418506724192036853000/\n 1002175233033793245470685544 0331350539381529641297397772349);\n dL4 := evalf(3426759976387913 28751843399036669849568846218979805820800700*SQRT7/\n 143167890 4333990350672407920047335791340218520185342538907 -\n 428107614 7419059649694705547949444587841860930558872690173400/\n 1002175 2330337932454706855440331350539381529641297397772349);\n d15 := e valf(-1950206477967455511058326696135743462758645751611098779858131152 365*\n SQRT7/31345750316714337466963897830202804740452122100302 2596467769130186 +\n 742433916334227979215893548114808212321547 26827981191218422498436501339/\n 196537854485798895917863639395 371585722634805568895167985291244626622);\n d65 := evalf(11076521 234134088057149961100737269777954476399103782076984857286503375*\n \+ SQRT7/329087237284404636393887946515735502851543021684485935244760 704980344 +\n 1690679026505303332964833560185838847186444729114 5441331568974896761472375/\n 7667732628726628027977589153816637 2164409524052485222912029244260420152);\n d75 := evalf(2804599143 838483635686420579755276860426016270238510991238647118735351562500000* \n SQRT7/118310850065290181027779673026426112288178048907015165 910136386441056921975113 +\n 1284250763397684417672117339887670 7596683191966556931280741549480590463867187500000/\n 8269928419 5637836538417991445471852489436456186003600971185334122298788460603987 );\n d85 := evalf(-2095405494089712410584392632410278131865968776 86456237303114804759765625*\n SQRT7/421338201303747202550100636 003205187294077231332452026343973962077332 -\n 4118045992043463 852343792034438314420149017616045054996408305694060546875/\n 12 64014603911241607650301908009615561882231693997356079031921886231996); \n d95 := evalf(2437414794617643124169781328211525734456694174242 4132340939126329776722021558976935336200985921795322095810211*SQRT7/49 7451098041522486420449572283854850989186539547190784589232754924606742 09849588541638078955675474411023748 +\n4790187987114673741153751532205 6486071550813309271882356682000239653823988828707478431319822202497503 6400066777/14923532941245674592613487168515645529675596186415723537676 9826477382022629548765624914236867026423233071244);\n dA5 := eval f(-6740527506762909554485731314767530486200704444861524520431088162621 44*\n SQRT7/745159566049002924805528153958871197929260818114161 914940179650083 -\n 4857227331886346154475321817339230392042806 5931051295941934257889156096/\n 8196755226539032172860809693547 583177221868999255781064341976150913);\n dB5 := evalf(10912548720 610153872305496739422257480895793952366018425701905663872000*\n \+ SQRT7/114043480581652831474770496690675589330097605706497838424056185 82767 +\n 40747682265994386369592516991009977668363761922476375 61931221314581376000/\n 650047839315421139406191831136850859181 556352527037679017120259217719);\n dC5 := evalf(-1786113636402341 648414048196007301317823652463115059649161263392851*\n SQRT7/15 6009105509298646498991269580169160318104407798924346017930117144 -\n \+ 3510202737592865619736023737394694881788890220866895845110075161 7257/\n 4680273165278959394969738087405074809543132233967730380 53790351432);\n dE5 := evalf(-16943893240065233774730235081467452 85244449384512671429450766*SQRT7/\n 270587312919124176277085096 888946464563301300315029739853423 -\n 1490539536407203575534711 38481703434532931554920520150727204840/\n 297646044211036593904 7936065778411110196314303465327138387653);\n dF5 := evalf(7425009 276210807541841567031004250686195270805576966863546408*SQRT7/\n \+ 14794015344784566956948215173822469843848924708581872902039 -\n \+ 17769242321979732113303486591852924208923200638318894675721108/\n \+ 14794015344784566956948215173822469843848924708581872902039);\n \+ dG5 := evalf(21503904804481981635576759310429973127232607726738406 848000000*SQRT7/\n 44382046034353700870844645521467409531546774 125745618706117 -\n 7727138933043673604634159120393014277050236 91227512321664000000/\n 146460751913367212873787330220842451454 1043546149605417301861);\n dH5 := evalf(3235287788646976404094427 63387912876880174943254587092000000*SQRT7/\n 128851101390059131 56051671280426022122061966681668082850163 -\n 19045000314337289 255140605818165995614748194763205317544500000/\n 12885110139005 913156051671280426022122061966681668082850163);\n dI5 := evalf(13 52756061845794935005032527459177157343737472884618209964851200*SQRT7/ \n 502519295421230613086015179936614862760416700585055231156357 -\n 1628404512627829046129653909489924879977458965139223700320 4198400/\n 5025192954212306130860151799366148627604167005850552 31156357);\n dJ5 := evalf(-20012719504182364728231582852980151153 92245938807932725791125*SQRT7/\n 143167890433399035067240792004 7335791340218520185342538907 +\n 115171192587764373750584763247 37880745366423251156991761578500/\n 143167890433399035067240792 0047335791340218520185342538907);\n dK5 := evalf(-630102187352623 2288335353065278679997660367485595369684528500*SQRT7/\n 3340584 110112644151568951813443783513127176547099132590783 +\n 2596099 94539919112520381575091296551490549603905366764948523500/\n 100 21752330337932454706855440331350539381529641297397772349);\n dL5 \+ := evalf(-498889365712718682629668782935471785287307308822264773675690 0*SQRT7/\n 1002175233033793245470685544033135053938152964129739 7772349 +\n 741057839890680165742805191097691884256999184958852 2199953300/\n 1002175233033793245470685544033135053938152964129 7397772349);\n d16 := evalf(8759327929244432857340050322892164480 9254715323653677309899691125*SQRT7/\n 1205605781412089902575534 5319308771054020046961654715248760351161 -\n 401822368168950462 61664896973126676995030163633026716312006139827990900/\n 982689 27242899447958931819697685792861317402784447583992645622313311);\n \+ d66 := evalf(-646750730096951652102592992176474105346801585175979547 1956639951946875*\n SQRT7/1645436186422023181969439732578677514 25771510842242967622380352490172 -\n 72110533133812330863008791 32909929222458082754180954209603197468316165625/\n 191693315718 16570069943972884541593041102381013121305728007311065105038);\n d 76 := evalf(-251936437382395068503297428488456354703069952284229953696 997300048828125000000*SQRT7/\n 91008346204069370021368979251097 00945244465300539628146933568187773609382701 -\n 73034172088466 89306832501286514466988244713997616442372528485130509277343750000000/ \n 275664280652126121794726638151572841631454853953345336570617 78040766262820201329);\n d86 := evalf(941148748854609247806624242 5829708665068152652753598274320297900390625*\n SQRT7/1620531543 4759507790388486000123276434387585820478924090152844695282 +\n \+ 5854738190994366163597922956162899979251447618215498628449062603027343 75/\n 105334550325936800637525159000801296823519307833113006585 993490519333);\n d96 := evalf(-1423190336249382817659067960999257 6890872896269669391033131831084299927256021775791805841788147988818788 330975*SQRT7/248725549020761243210224786141927425494593269773595392294 61637746230337104924794270819039477837737205511874 -\n6810340779192226 5319239305287885740782552959117026284898925632386305073324820674656222 237927256276086704523325/124362774510380621605112393070963712747296634 88679769614730818873115168552462397135409519738918868602755937);\n \+ dA6 := evalf(6054998946507855941154085224896194255295250567149945394 8353424025600*\n SQRT7/5731996661915407113888678107375932291763 5447547243224226167665391 +\n 828678293072444495024242685542111 28993861815964251993805443017305395200/\n 819675522653903217286 0809693547583177221868999255781064341976150913);\n dB6 := evalf(- 1274352967522643207649882854577366800624211723991896734062750752640000 0*\n SQRT7/1140434805816528314747704966906755893300976057064978 3842405618582767 -\n 231728360507055975476609780772190483362222 6626044503834275727836710400000/\n 2166826131051403798020639437 12283619727185450842345893005706753072573);\n dC6 := evalf(104289 9908700117841039313312353663742325293833338076584273444464975*\n \+ SQRT7/78004552754649323249495634790084580159052203899462173008965058 572 +\n 4990550874280040648638722246400872012250593517892524642 718365021325/\n 39002276377324661624747817395042290079526101949 731086504482529286);\n dE6 := evalf(19786853818194620715195780547 25043358416118338445111406746700*SQRT7/\n 270587312919124176277 085096888946464563301300315029739853423 +\n 3294023182185249314 790175780818430348500565191103210664134000/\n 38655330417017739 468155013841278066366185900045004248550489);\n dF6 := evalf(-8670 827363319521458391749977399960880738754626900190802259600*SQRT7/\n \+ 14794015344784566956948215173822469843848924708581872902039 +\n \+ 20750685530389736142396736277471776562099060814518578546774600/\n 14794015344784566956948215173822469843848924708581872902039); \n dG6 := evalf(-251119748488818853216726747539088062957308048420 16137600000000*SQRT7/\n 443820460343537008708446455214674095315 46774125745618706117 +\n 82033185179704454423090234313012641155 003796319965868800000000/\n 13314613810306110261253393656440222 8594640322377236856118351);\n dH6 := evalf(-377812617364563816781 274652988438993015682333907315400000000*SQRT7/\n 12885110139005 913156051671280426022122061966681668082850163 +\n 2224049879493 9982278338073459970930766377295148098911525000000/\n 1288511013 9005913156051671280426022122061966681668082850163);\n dI6 := eval f(-121517737612379293186559956233074423082943425456607622266880000*SQR T7/\n 386553304170177394681550138412780663661859000450042485504 89 +\n 20481595634097635022998477937197814100746282772852146893 127680000/\n 50251929542123061308601517993661486276041670058505 5231156357);\n dJ6 := evalf(2337058843108387223130118014187125966 651720500656422395131250*SQRT7/\n 14316789043339903506724079200 47335791340218520185342538907 -\n 14706725244159097369839650045 084389134466768834323339695143750/\n 14316789043339903506724079 20047335791340218520185342538907);\n dK6 := evalf(735824978062894 9799290333551278654301242533370906131902325000*SQRT7/\n 3340584 110112644151568951813443783513127176547099132590783 -\n 4613018 2751302283817918221879360970634138119727341303044612500/\n 1431 678904333990350672407920047335791340218520185342538907);\n dL6 := evalf(5825963850779902104934735625648005867645807120912036599905000*S QRT7/\n 1002175233033793245470685544033135053938152964129739777 2349 -\n 671362494647510761287967052436476189518715145965320645 4772500/\n 1002175233033793245470685544033135053938152964129739 7772349);\n d17 := evalf(-699489475093839665173148832780546819469 357457958881532054048398750*SQRT7\n /15672875158357168733481948 9151014023702260610501511298233884565093 +\n 163074924384235731 939807678090398452743117931030873070102421348689659750/\n 68788 2490700296135712522737883800550029221819491133087948519356193177);\n \+ d67 := evalf(32564479674342770145680506638056725979974514653489394 159326992515625*\n SQRT7/13487181855918222803028194529333422248 01405826575762029691642233526 +\n 41986895194618622915638860421 102159164607440878383392575567397620821546875/\n 13418532100271 5990489607810191791151287716667091849140096051177455735266);\n d7 7 := evalf(2011876798826786379735123103598287827469131143296795 192190628542480468750000000*SQRT7/\n 11831085006529018102777967 3026426112288178048907015165910136386441056921975113 +\n 127574 0725733037701289934404083314082002249520463210939785634138557788085937 50000000/\n 578894989369464855768925940118302967426055193302025 206798297338856091519224227909);\n d87 := evalf(-3757843350764472 5022360307728310855961544565257002421026817336669921875*\n SQRT 7/10533455032593680063752515900080129682351930783311300658599349051933 3 -\n 146098497166674034983510111315644691866595650353571819713 0879330322265625/\n 3160036509778104019125754770024038904705579 23499339019757980471557999);\n d97 := evalf(421523003793281873607 1241260142026334089662463853643029744516593998712667294578315821888672 681938019401125*SQRT7/119925529903935025655846087821565778926997719273 67183813626633435983769095913594151793172361541821217701 +\n1189611498 2465836977186512629614352109308240573892757979714041687223710427727304 69473142015542448281668359647125/2611618264717993053707360254490237967 6932293326227516190934719633541853960171033984359991451729624065787467 7);\n dA7 := evalf(-483531164605213332827621048053052792169911733 168059717563493500416000*\n SQRT7/74515956604900292480552815395 8871197929260818114161914940179650083 -\n 482504110415092660293 138266356471191063590434946166327068843254107648000/\n 57377286 585773225210025667854833082240553082994790467450393833056391);\n \+ dB7 := evalf(782810749810557137210892064628038063180207688810014726506 9689408000000*\n SQRT7/1140434805816528314747704966906755893300 9760570649783842405618582767 +\n 404776693364997987510798802564 41409547001320907230018857505974948288000000/\n 455033487520794 7975843342817957956014270894467689263753119841814524033);\n dC7 : = evalf(-1884216309611934219225257333643902673671649097641505914551443 8625*SQRT7\n /2294251551607333036749871611473075887030947173513 593323793089958 -\n 8717356289669020392276303305996933555766536 8796189760818312215457125/\n 8190478039238178941197041652958880 91670048140944352816594133115006);\n dE7 := evalf(-12154687334329 60389436919410886628774863609227850563214449000*SQRT7/\n 270587 312919124176277085096888946464563301300315029739853423 -\n 2127 82850393317473657425990408971734919709700004931017869430000/\n \+ 2976460442110365939047936065778411110196314303465327138387653);\n \+ dF7 := evalf(53263240583597932119723724720797704508259007016020146400 12000*SQRT7/\n 147940153447845669569482151738224698438489247085 81872902039 -\n 12746750792840163841933814131143866811838471678 117766637062000/\n 14794015344784566956948215173822469843848924 708581872902039);\n dG7 := evalf(15425807732760500780763672238300 515681881597379952672000000000*SQRT7/\n 44382046034353700870844 645521467409531546774125745618706117 -\n 5543056509467803647238 06333094169233744998044820565696000000000/\n 146460751913367212 8737873302208424514541043546149605417301861);\n dH7 := evalf(2320 83093008364823648443315110295386092801194235238000000000*SQRT7/\n \+ 12885110139005913156051671280426022122061966681668082850163 -\n \+ 13661914698306229195729216969711744974728895376228541750000000/\n \+ 12885110139005913156051671280426022122061966681668082850163);\n dI7 := evalf(970398404805540150632185310931084731489172095720641 989836800000*SQRT7/\n 50251929542123061308601517993661486276041 6700585055231156357 -\n 130405528327974940560613357047448684738 70997008694932232601600000/\n 502519295421230613086015179936614 862760416700585055231156357);\n dJ7 := evalf(-1435610723206137928 951694790428931747906894457174721992937500*SQRT7/\n 14316789043 33990350672407920047335791340218520185342538907 +\n 31614371052 96062675426098100171489277186422929136425922375000/\n 477226301 444663450224135973349111930446739506728447512969);\n dK7 := evalf (-4520032655681925676944197548888486813595105051207128217750000*SQRT7/ \n 3340584110112644151568951813443783513127176547099132590783 + \n 203703904923247205940579809550396524495519753185149039998000 000/\n 10021752330337932454706855440331350539381529641297397772 349);\n dL7 := evalf(-3578778601084225084833595616265137525299387 923370917980350000*SQRT7/\n 10021752330337932454706855440331350 539381529641297397772349 +\n 2901721383817167216825184518040806 692095561741960030898200000/\n 10021752330337932454706855440331 350539381529641297397772349);\n d18 := evalf(17555577599040943735 8839820235487185823274254154528202609108731250*SQRT7/\n 1567287 51583571687334819489151014023702260610501511298233884565093 -\n \+ 557867985574151013203541847269934083393982765452585790161343048751375 0/\n 9826892724289944795893181969768579286131740278444758399264 5622313311);\n d68 := evalf(-498549077367260056874272771904614581 953479798642430508104866804921875*\n SQRT7/82271809321101159098 471986628933875712885755421121483811190176245086 -\n 1918510705 812278520353528916004956407949488468882540636667169305833671875/\n \+ 191693315718165700699439728845415930411023810131213057280073110651 05038);\n d78 := evalf(-50493482059577011865148372061582161634445 7874618213075439408117675781250000000*SQRT7/\n 1183108500652901 81027779673026426112288178048907015165910136386441056921975113 -\n \+ 582925274377814119127739252947128708526919623484236263680929136868 8964843750000000/\n 8269928419563783653841799144547185248943645 6186003600971185334122298788460603987);\n d88 := evalf(9431322828 772428829902640294193634610457182926248640916490469970703125*\n \+ SQRT7/105334550325936800637525159000801296823519307833113006585993490 519333 +\n 4672983575772741830559064962212755834137930320117548 08657495228271484375/\n 316003650977810401912575477002403890470 557923499339019757980471557999);\n d98 := evalf(-1097069080925146 7710459098963895958011617568886187507780045597135433491652511415669336 44183495378079259924375*SQRT7/1243627745103806216051123930709637127472 9663488679769614730818873115168552462397135409519738918868602755937 - \n54357017459008758272536529496776799668344136235116716227353781227314 811155694172455232889568897360064327858125/373088323531141864815337179 2128911382418899046603930884419245661934550565738719140622855921675660 5808267811);\n dA8 := evalf(1213552052465502680217523261748132800 73096153911386860039155223040000*\n SQRT7/745159566049002924805 528153958871197929260818114161914940179650083 +\n 2204710058076 4751308730110947717870343403344733525449061074282421760000/\n 8 196755226539032172860809693547583177221868999255781064341976150913);\n dB8 := evalf(-19646750026966477407033757598262438321200461966023 05650193859520000000*\n SQRT7/114043480581652831474770496690675 58933009760570649783842405618582767 -\n 18495495227367365784253 17868674896966708332754574645607920741018560000000/\n 650047839 315421139406191831136850859181556352527037679017120259217719);\n \+ dC8 := evalf(803921453928474090946410484458075817196402483851358649478 59274375*SQRT7/\n 390022763773246616247478173950422900795261019 49731086504482529286 +\n 39832288838193359583128559971201494721 35026200554177016609686308125/\n 117006829131973984874243452185 126870238578305849193259513447587858);\n dE8 := evalf(30505470673 6334016432297948882625960092399514374513276935000*SQRT7/\n 2705 87312919124176277085096888946464563301300315029739853423 +\n 69 353937077584493629916215748288775268139741309544613455050000/\n \+ 2976460442110365939047936065778411110196314303465327138387653);\n \+ dF8 := evalf(-133678487888083933579675084375143200930488143782276619 7780000*SQRT7/\n 1479401534478456695694821517382246984384892470 8581872902039 +\n 319914138306829468600531446371143589222662754 1404474243530000/\n 1479401534478456695694821517382246984384892 4708581872902039);\n dG8 := evalf(-387152307965795444150009436219 8449477079860886355680000000000*SQRT7/\n 4438204603435370087084 4645521467409531546774125745618706117 +\n 139117974112156976275 654586466561785559001945472146240000000000/\n 14646075191336721 28737873302208424514541043546149605417301861);\n dH8 := evalf(-58 247520424623867073113342801624660418662229380970000000000*SQRT7/\n \+ 12885110139005913156051671280426022122061966681668082850163 +\n \+ 3428826482420154462410850018536495909254143411432276250000000/\n \+ 12885110139005913156051671280426022122061966681668082850163);\n dI8 := evalf(-24354768876635010124733067870650225839790671539047 7320192000000*SQRT7/\n 5025192954212306130860151799366148627604 16700585055231156357 +\n 33059486745718615746127996773203418477 21769707549595504640000000/\n 502519295421230613086015179936614 862760416700585055231156357);\n dJ8 := evalf(36030528479187697602 7312121944428132436664116668984431562500*SQRT7/\n 1431678904333 990350672407920047335791340218520185342538907 -\n 2427440465292 287234817246484618844561890536685058664154375000/\n 14316789043 33990350672407920047335791340218520185342538907);\n dK8 := evalf( 1134424274595093258513376484761384930885032455880792216250000*SQRT7/\n 3340584110112644151568951813443783513127176547099132590783 -\n 51246101677545589535973599862632917488838190987880233485000000 /\n 10021752330337932454706855440331350539381529641297397772349 );\n dL8 := evalf(89819114766083809798011116695077425075397012034 0516135250000*SQRT7/\n 1002175233033793245470685544033135053938 1529641297397772349 -\n 434922168250264826621856885191498764502 971172424562510000000/\n 10021752330337932454706855440331350539 381529641297397772349);\n eqns := \{SOLN_=[soln],\n d12_=d 12,d62_=d62,d72_=d72,d82_=d82,d92_=d92,dA2_=dA2,dB2_=dB2,dC2_=dC2,\n \+ dE2_=dE2,dF2_=dF2,dG2_=dG2,dH2_=dH2,dI2_=dI2,dJ2_=dJ2,dK2_=dK2,d L2_=dL2,\n d13_=d13,d63_=d63,d73_=d73,d83_=d83,d93_=d93,dA3_=dA 3,dB3_=dB3,dC3_=dC3,\n dE3_=dE3,dF3_=dF3,dG3_=dG3,dH3_=dH3,dI3_ =dI3,dJ3_=dJ3,dK3_=dK3,dL3_=dL3,\n d14_=d14,d64_=d64,d74_=d74,d 84_=d84,d94_=d94,dA4_=dA4,dB4_=dB4,dC4_=dC4,\n dE4_=dE4,dF4_=dF 4,dG4_=dG4,dH4_=dH4,dI4_=dI4,dJ4_=dJ4,dK4_=dK4,dL4_=dL4,\n d15_ =d15,d65_=d65,d75_=d75,d85_=d85,d95_=d95,dA5_=dA5,dB5_=dB5,dC5_=dC5,\n dE5_=dE5,dF5_=dF5,dG5_=dG5,dH5_=dH5,dI5_=dI5,dJ5_=dJ5,dK5_=dK5 ,dL5_=dL5,\n d16_=d16,d66_=d66,d76_=d76,d86_=d86,d96_=d96,dA6_= dA6,dB6_=dB6,dC6_=dC6,\n dE6_=dE6,dF6_=dF6,dG6_=dG6,dH6_=dH6,dI 6_=dI6,dJ6_=dJ6,dK6_=dK6,dL6_=dL6,\n d17_=d17,d67_=d67,d77_=d77 ,d87_=d87,d97_=d97,dA7_=dA7,dB7_=dB7,dC7_=dC7,\n dE7_=dE7,dF7_= dF7,dG7_=dG7,dH7_=dH7,dI7_=dI7,dJ7_=dJ7,dK7_=dK7,dL7_=dL7,\n d1 8_=d18,d68_=d68,d78_=d78,d88_=d88,d98_=d98,dA8_=dA8,dB8_=dB8,dC8_=dC8, \n dE8_=dE8,dF8_=dF8,dG8_=dG8,dH8_=dH8,dI8_=dI8,dJ8_=dJ8,dK8_=d K8,dL8_=dL8\};\n return subs(eqns,eval(rk78interp)); \n else\n return evalf[saveDigits]([soln]);\n end if;\nend proc: # of ru ngk78" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "rungk78b: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 152536 "rungk78b := proc(fxy ,eqn1,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,c2,c3,c4,c5 ,c6,c7,c8,c9,cA,cB,cF,\n cG,cH,cI,cJ,cK,cL,a21,a31,a32,a41,a43,a51,a 53,a54,a61,a63,a64,a65,a71,a74,\n a75,a76,a81,a84,a85,a86,a87,a91,a9 4,a95,a96,a97,a98,aA1,aA4,aA5,aA6,aA7,aA8,\n aA9,aB1,aB4,aB5,aB6,aB7 ,aB8,aB9,aBA,aC1,aC4,aC5,aC6,aC7,aC8,aC9,aCA,aCB,\n aD1,aD4,aD5,aD6, aD7,aD8,aD9,aDA,aE1,aE6,aE7,aE8,aE9,aEA,aEB,aEC,aF1,aF6,\n aF7,aF8,a F9,aFA,aFB,aFC,aFE,aG1,aG6,aG7,aG8,aG9,aGA,aGB,aGC,aGE,aGF,aH1,\n aH 6,aH7,aH8,aH9,aHA,aHB,aHC,aHE,aHF,aHG,aI1,aI6,aI7,aI8,aI9,aIA,aIB,aIC, \n aIE,aIF,aIG,aIH,aJ1,aJ6,aJ7,aJ8,aJ9,aJA,aJB,aJC,aJE,aJF,aJG,aJH,a K1,aK6,\n aK7,aK8,aK9,aKA,aKB,aKC,aKE,aKF,aKG,aKH,aL1,aL6,aL7,aL8,aL 9,aLA,aLB,aLC,\n aLE,aLF,aLG,aLH,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC ,fD,fE,fF,fG,fH,fI,fJ,\n fK,fL,b1,b6,b7,b8,b9,bA,bB,bC,e1,e6,e7,e8,e 9,eA,eB,eC,eD,d12,d62,d72,d82,\n d92,dA2,dB2,dC2,dE2,dF2,dG2,dH2,dI2 ,dJ2,dK2,dL2,d13,d63,d73,d83,d93,dA3,\n dB3,dC3,dE3,dF3,dG3,dH3,dI3, dJ3,dK3,dL3,d14,d64,d74,d84,d94,dA4,dB4,dC4,\n dE4,dF4,dG4,dH4,dI4,d J4,dK4,dL4,d15,d65,d75,d85,d95,dA5,dB5,dC5,dE5,dF5,\n dG5,dH5,dI5,dJ 5,dK5,dL5,d16,d66,d76,d86,d96,dA6,dB6,dC6,dE6,dF6,dG6,dH6,\n dI6,dJ6 ,dK6,dL6,d17,d67,d77,d87,d97,dA7,dB7,dC7,dE7,dF7,dG7,dH7,dI7,dJ7,\n \+ dK7,dL7,d18,d68,d78,d88,d98,dA8,dB8,dC8,dE8,dF8,dG8,dH8,dI8,dJ8,dK8,dL 8,\n yout,yerr,rs,hmx,hmn,hstrt,temp,sgn,eqns,maxstps,tiny,yscale,er r,htemp,\n hnext,saveDigits,eps,Options,j,prntflg,t,tt,errcntl,ymax, ymaxtemp,x,y,\n errc,x0,y0,xn,f,outpt,minstepsize,ftd,inc,rk78interp ,rk78step,finished,\n maxstepsize,laststep,safety,pgrow,pshrink,errc ontrol,SQRT7;\n\nrk78interp := proc(x_rk78interp::realcons)\n local \+ b1,b6,b7,b8,b9,bA,bB,bC,bE,bF,bG,bH,bI,bJ,bK,bL,xF,xS,yF,\n f1,f6,f7 ,f8,f9,fA,fB,fC,fE,fF,fG,fH,fI,fJ,fK,fL,d12,d62,d72,d82,\n d92,dA2,d B2,dC2,dE2,dF2,dG2,dH2,dI2,dJ2,dK2,dL2,d13,d63,d73,d83,d93,dA3,\n dB 3,dC3,dE3,dF3,dG3,dH3,dI3,dJ3,dK3,dL3,d14,d64,d74,d84,d94,dA4,dB4,dC4, \n dE4,dF4,dG4,dH4,dI4,dJ4,dK4,dL4,d15,d65,d75,d85,d95,dA5,dB5,dC5,d E5,dF5,\n dG5,dH5,dI5,dJ5,dK5,dL5,d16,d66,d76,d86,d96,dA6,dB6,dC6,dE 6,dF6,dG6,dH6,\n dI6,dJ6,dK6,dL6,d17,d67,d77,d87,d97,dA7,dB7,dC7,dE7 ,dF7,dG7,dH7,dI7,dJ7,\n dK7,dL7,d18,d68,d78,d88,d98,dA8,dB8,dC8,dE8, dF8,dG8,dH8,dI8,dJ8,dK8,dL8,\n s,t,jF,jM,jS,n,h,data,xx,ys,saveDigit s;\n options `Copyright 2007 by Peter Stone`;\n \n data := SOLN_ ;\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Di gits+5);\n xx := evalf(x_rk78interp);\n n := nops(data);\n if (d ata[1,1]data[n,1] or xxdata[1,1])) then\n error \+ \"independent variable is outside the interpolation interval: %1\",eva lf(data[1,1])..evalf(data[n,1]);\n end if;\n\n d12 := d12_; d62 := d62_; d72 := d72_; d82 := d82_; d92 := d92_; dA2 := dA2_;\n dB2 := \+ dB2_; dC2 := dC2_; dE2 := dE2_; dF2 := dF2_; dG2 := dG2_; dH2 := dH2_; \n dI2 := dI2_; dJ2 := dJ2_; dK2 := dK2_; dL2 := dL2_; d13 := d13_; \+ d63 := d63_;\n d73 := d73_; d83 := d83_; d93 := d93_; dA3 := dA3_; d B3 := dB3_; dC3 := dC3_;\n dE3 := dE3_; dF3 := dF3_; dG3 := dG3_; dH 3 := dH3_; dI3 := dI3_; dJ3 := dJ3_;\n dK3 := dK3_; dL3 := dL3_; d14 := d14_; d64 := d64_; d74 := d74_; d84 := d84_;\n d94 := d94_; dA4 \+ := dA4_; dB4 := dB4_; dC4 := dC4_; dE4 := dE4_; dF4 := dF4_;\n dG4 : = dG4_; dH4 := dH4_; dI4 := dI4_; dJ4 := dJ4_; dK4 := dK4_; dL4 := dL4 _;\n d15 := d15_; d65 := d65_; d75 := d75_; d85 := d85_; d95 := d95_ ; dA5 := dA5_;\n dB5 := dB5_; dC5 := dC5_; dE5 := dE5_; dF5 := dF5_; dG5 := dG5_; dH5 := dH5_;\n dI5 := dI5_; dJ5 := dJ5_; dK5 := dK5_; \+ dL5 := dL5_; d16 := d16_; d66 := d66_;\n d76 := d76_; d86 := d86_; d 96 := d96_; dA6 := dA6_; dB6 := dB6_; dC6 := dC6_;\n dE6 := dE6_; dF 6 := dF6_; dG6 := dG6_; dH6 := dH6_; dI6 := dI6_; dJ6 := dJ6_;\n dK6 := dK6_; dL6 := dL6_; d17 := d17_; d67 := d67_; d77 := d77_; d87 := d 87_;\n d97 := d97_; dA7 := dA7_; dB7 := dB7_; dC7 := dC7_; dE7 := dE 7_; dF7 := dF7_;\n dG7 := dG7_; dH7 := dH7_; dI7 := dI7_; dJ7 := dJ7 _; dK7 := dK7_; dL7 := dL7_;\n d18 := d18_; d68 := d68_; d78 := d78_ ; d88 := d88_; d98 := d98_; dA8 := dA8_;\n dB8 := dB8_; dC8 := dC8_; dE8 := dE8_; dF8 := dF8_; dG8 := dG8_; dH8 := dH8_; \n dI8 := dI8_; dJ8 := dJ8_; dK8 := dK8_; dL8 := dL8_;\n\n # Perform a binary searc h for the interval containing x.\n n := nops(data);\n jF := 0;\n \+ jS := n+1;\n\n if data[1,1]1 do \n jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF : = jM else jS := jM end if;\n end do;\n if jM = n then jF := \+ n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM := t runc((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := j M end if;\n end do;\n if jM = n then jF := n-1; jS := n end \+ if;\n end if;\n \n # Get the data needed from the list.\n xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF,2];\n f1 := dat a[jF,3];\n f6 := data[jF,4];\n f7 := data[jF,5];\n f8 := data[jF ,6];\n f9 := data[jF,7];\n fA := data[jF,8];\n fB := data[jF,9]; \n fC := data[jF,10];\n fE := data[jF,11];\n fF := data[jF,12]; \n fG := data[jF,13];\n fH := data[jF,14];\n fI := data[jF,15]; \n fJ := data[jF,16];\n fK := data[jF,17];\n fL := data[jF,18]; \n\n # Calculate the parameters.\n h := xx-xF;\n s := h/(xS-xF); \n b1 := ((((((d18*s+d17)*s+d16)*s+d15)*s+d14)*s+d13)*s+d12)*s+1;\n \+ b6 := ((((((d68*s+d67)*s+d66)*s+d65)*s+d64)*s+d63)*s+d62)*s;\n b7 \+ := ((((((d78*s+d77)*s+d76)*s+d75)*s+d74)*s+d73)*s+d72)*s;\n b8 := (( ((((d88*s+d87)*s+d86)*s+d85)*s+d84)*s+d83)*s+d82)*s;\n b9 := ((((((d 98*s+d97)*s+d96)*s+d95)*s+d94)*s+d93)*s+d92)*s;\n bA := ((((((dA8*s+ dA7)*s+dA6)*s+dA5)*s+dA4)*s+dA3)*s+dA2)*s;\n bB := ((((((dB8*s+dB7)* s+dB6)*s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := ((((((dC8*s+dC7)*s+dC6 )*s+dC5)*s+dC4)*s+dC3)*s+dC2)*s;\n bE := ((((((dE8*s+dE7)*s+dE6)*s+d E5)*s+dE4)*s+dE3)*s+dE2)*s;\n bF := ((((((dF8*s+dF7)*s+dF6)*s+dF5)*s +dF4)*s+dF3)*s+dF2)*s;\n bG := ((((((dG8*s+dG7)*s+dG6)*s+dG5)*s+dG4) *s+dG3)*s+dG2)*s;\n bH := ((((((dH8*s+dH7)*s+dH6)*s+dH5)*s+dH4)*s+dH 3)*s+dH2)*s;\n bI := ((((((dI8*s+dI7)*s+dI6)*s+dI5)*s+dI4)*s+dI3)*s+ dI2)*s;\n bJ := ((((((dJ8*s+dJ7)*s+dJ6)*s+dJ5)*s+dJ4)*s+dJ3)*s+dJ2)* s;\n bK := ((((((dK8*s+dK7)*s+dK6)*s+dK5)*s+dK4)*s+dK3)*s+dK2)*s;\n \+ bL := ((((((dL8*s+dL7)*s+dL6)*s+dL5)*s+dL4)*s+dL3)*s+dL2)*s;\n \n \+ # Calculate the interpolated y value.\n t := b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bE*fE\n \+ + bF*fF + bG*fG + bH*fH + bI*fI + bJ*fJ + bK*fK + bL*fL;\n ys := y F + t*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk78 interp\n\nrk78step := proc(x_rk78step::realcons)\n local c2,c3,c4,c5 ,c6,c7,c8,c9,cA,cB,a21,a31,a32,a41,a43,a51,a53,a54,\n a61,a63,a64,a6 5,a71,a74,a75,a76,a81,a84,a85,a86,a87,a91,a94,a95,a96,\n a97,a98,aA1 ,aA4,aA5,aA6,aA7,aA8,aA9,aB1,aB4,aB5,aB6,aB7,aB8,aB9,aBA,\n aC1,aC4, aC5,aC6,aC7,aC8,aC9,aCA,aCB,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,\n fC,b 1,b6,b7,b8,b9,bA,bB,bC,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDigits; \n options `Copyright 2004 by Peter Stone`;\n \n data := SOLN_; \n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),D igits+5);\n\n # procedure to evaluate the slope field\n fn := proc (X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \"eva luation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_rk78step); \n n := nops(data);\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable is outside the \+ interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n e nd if;\n\n c2 := 0.0556; c3 := c3_; c4 := c4_; c5 := 0.3846; c6 := 0 .4615; c7 := 0.1538;\n c8 := 0.8571; c9 := c9_; cA := 0.7222; cB :=0 .9375; a21 := c2; a31 := a31_;\n a32 := a32_; a41 := a41_; a43 := a4 3_; a51 := a51_; a53 := a53_; a54 := a54_;\n a61 := a61_; a64 := a64 _; a65 := a65_; a71 := a71_; a74 := a74_; a75 := a75_;\n a76 := a76_ ; a81 := a81_; a84 := a84_; a85 := a85_; a86 := a86_; a87 := 9;\n a9 1 := a91_; a94 := a94_; a95 := a95_; a96 := a96_; a97 := a97_; a98 := \+ a98_;\n aA1 := aA1_; aA4 := aA4_; aA5 := aA5_; aA6 := aA6_; aA7 := a A7_; aA8 := aA8_;\n aA9 := aA9_; aB1 := aB1_; aB4 := aB4_; aB5 := aB 5_; aB6 := aB6_; aB7 := aB7_;\n aB8 := aB8_; aB9 := aB9_; aBA := aBA _; aC1 := aC1_; aC4 := aC4_; aC5 := aC5_;\n aC6 := aC6_; aC7 := aC7_ ; aC8 := aC8_; aC9 := aC9_; aCA := aCA_; aCB := aCB_;\n b1 := b1_; b 6 := b6_; b7 := b7_; b8 := b8_; b9 := b9_; bA := bA_; bB := bB_;\n b C := bC_;\n\n # Perform a binary search for the interval containing \+ x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1] 1 do\n jM := trunc((jF+jS)/2 );\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx <=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get t he data needed from the list.\n xk := data[jF,1];\n yk := data[jF, 2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn (xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a 31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a4 3*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54 *f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65* f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f 5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t : = a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 \+ + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + h,yk \+ + t*h);\n\n # Calculate the intermediate y value.\n t := b1*f1 + b 6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC;\n ys := yk + t *h;\n \n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk78 step \n\n # start of main procedure rungk78\n x := lhs(eqn1);\n \+ y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs( rs);\n y0 := rhs(eqn2);\n\n # Get the options.\n # Set the defau lt values to start with.\n maxstps := 2000;\n t := Float(1,-Digits );\n hmx := 0.5;\n hstrt := evalf(0.1*10^(-ceil(Digits/10)));\n \+ hmn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ymaxtemp := 0; \n outpt := 'rkinterp';\n prntflg := false;\n Options := [];\n \+ if nargs>3 then\n Options:=[args[4..nargs]];\n if not type( Options,list(equation)) then\n error \"each optional argument \+ must be an equation\"\n end if;\n if hasoption(Options,'maxs teps','maxstps','Options') then\n if not type(maxstps,posint) \+ then\n error \"\\\"maxsteps\\\" must be a positive integer \"\n end if;\n end if;\n if hasoption(Options,'toler ance','t','Options') then \n tt := evalf(t); \n if not type(tt,float) or \n tt>Float(1,-iquo(Digits,2)) or tthmx) or evalf(hstrttrue then prntflg := false end if; \n end if; \n if nops(Options)>0 then\n error \"%1 is not a valid op tion for %2\",op(1,Options), procname;\n end if;\n end if;\n\n \+ if prntflg then\n print(`method: modified Enright (Verner 1990 \+ formula) 13 stage, order 7-8`);\n print(`an embedded order 7 sche me provides error control`);\n if outpt='rkinterp' then\n \+ print(`8 extra stages are used to construct the interpolation procedu re`);\n end if;\n print(``);\n end if;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n \n # procedure to evaluate the slope field\n fn := subs(\{FXY_=evalf(fxy ),X_=x,Y_=y\},\n proc(X_,Y_)\n local val; \n val := tra perror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) \+ then\n error \"evaluation of slope field failed at %1\",evalf( [X_,Y_],saveDigits);\n end if;\n val;\n end proc);\n\n \+ ## coefficients essentially those of W.H.Enright\n # nodes\n c2 \+ := 0.0556;\n c3 := evalf(473499/4616000);\n c4 := evalf(1420497/92 32000);\n c5 := 0.3846;\n c6 := 0.4615;\n c7 := 0.1538;\n c8 : = 0.8571;\n c9 := evalf(14280181565693441800/15023510624554266963); \n cA := 0.7222;\n cB := 0.9375;\n\n # linking coefficients\n \+ a21 := c2;\n a31 := evalf(94226774499/11846945536000);\n a32 := ev alf(224201303001/2369389107200);\n a41 := evalf(1420497/36928000);\n a43 := evalf(4261491/36928000);\n a51 := evalf(3590880889914277/9 341720958375000);\n a53 := evalf(-1122077307242443/778476746531250); \n a54 := evalf(1683359084698258/1167715119796875);\n a61 := evalf (3279216863/71027928000);\n a64 := evalf(1418466643672/6146756958375 );\n a65 := evalf(725783021041/3932390759616);\n a71 := evalf(2262 8776819090891/378192197956950000);\n a74 := evalf(116326878837670912 /1047320101758291075);\n a75 := evalf(-21022506263989/61443605619000 0);\n a76 := evalf(182198401/10649112500);\n a81 := evalf(-1507026 09045465151/280142368857000000);\n a84 := evalf(-4704817457243053379 5112/6781573975400382234375);\n a85 := evalf(-29670244019740727/6363 654238520000);\n a86 := evalf(503350581600824913/125990342179812500) ;\n a87 := 9; \n a91 := evalf(-16045918035544526531085666708200976 7990929543490591025544394180588552370348031380762359144852118568300248 64166368323768200/9829483157728664844198544034921655975378257830080951 893693520116322068439377446708493269493633244146421522730587295739613) ;\n a94 := evalf(-23585391478818778730394458117511032898674036917053 9327128099448204326332027198451876666258922924545391962376003200954368 0000000/21783552618195556555802280034142946408638517212290660803134954 3583863022015887117168566338470163090032498196064101837445053273);\n \+ a95 := evalf(-9911366389726261686789033714164561000939004055351649246 83058122802429707354033382826947398158683765324439618282500000000/7984 8142008846002789298925227605775190331269194726743910364273272231784282 184770467794155269096224513726772081370189773);\n a96 := evalf(99411 2798212104133871493524972117858295471493586969526467810339051290485937 57052549024957474512389085654050445280000000/1021975007115435552919936 0565479179548497227516418867455143546824991883616697162903707552409044 338358355837306818391433);\n a97 := evalf(19432759967238013409589829 1719912961363678073793023525007081328425098431574448809779310732532821 200046895000000000/119960114882277226496566739311364908912564632926204 73601841875115170259043531987881275965965525693289412424400177);\n a 98 := evalf(-473814386768412218959381624419945054048338437216354995199 0525387550768038015218275414120082248510000000000/45627381556119209828 9165283853264342733761371582288925031587925670818017616283449256189927 49059885819540261);\n aA1 := evalf(100509763879264306824096153463041 174636629364248095333923106653001873/\n 22949032400764462804 2361756217436155832461488260089524115475000000000);\n aA4 := evalf(3 5076261889213578261995286390053983221937920015616/\n 8903662 403052468890234321680409039895089390971875);\n aA5 := evalf(29877053 472248545227782869189767925950557009/\n 10443709158645362958 089905740134206606110000);\n aA6 := evalf(-7260202518279888944289396 6553844286012776770019588838776297031451/\n 4091843938040500 7926071673834718276106178863851548244800289187500);\n aA7 := evalf(- 15322912063864370512130145988492098605486502994107816190/\n \+ 3130069400645604876183669549605539076333579290524919889);\n aA8 := e valf(66085154677219418645471125072555541174985695924/\n 3102 22736648235062495097951962638800384203417327);\n aA9 := evalf(-33475 6546189656076254902666782312303663458305272655253100300162308757552394 20324728600957368877132012320553021/5636071814865050827754192376148730 1604316912513035933026937034509732857574025045747550659699378005157500 0000000);\n aB1 := evalf(-510109776019784161513757125661110921966996 5728737004453654940399435749927779/34602547900652184980253949121136544 40547987641021174968985010753183759952128);\n aB4 := evalf(-73928285 3758412257967453242147288028248514875000/\n 6724418287565482 9098323943713374207709631980757);\n aB5 := evalf(-304301954438407952 266341438991435702455078125/\n 26817588459995310678515661957 421952038871616);\n aB6 := evalf(79448939923998931164766316975203638 55501654462308622798446100145004371780765625/8870051616029286592528276 04035768657298435884939489754462273147402132735951354);\n aB7 := eva lf(2714666628898351286148107969160694880624858347849398797749127958808 59375/1708005786820880758491191957239587196741461808844912758429409035 6526117);\n aB8 := evalf(-547671639173493535187249719091874257724281 347519101322819710937500/\n 55458973457775510563639971017446 68576293320106258184122878184564689);\n aB9 := evalf(278805054229456 4730519147857701304010562775210713862748202538528260236025540352528788 88463451556710568650135086751734733498388408614837563/5703278975899384 2471673989706725819315996341861372243823982103984407642346136141015055 914541200747733442561186185728215790313661884647470336);\n aBA := ev alf(-7641031089620713267943821483116886435546875/\n 18651155 49729059107236140767953375513727732867);\n aC1 := evalf(-21732961652 44568434534168496725754283210370856714048295955495704392191998074219/8 2632970981719746825391281499627672129771927187304712149693926570808663 7102000);\n aC4 := evalf(-117648588933447234539794802476947986599126 7657667189808793600000/\n 1282382741257457848573950236830553 91720808636521055761250085619);\n aC5 := evalf(-90164152627308866729 3677983960434306145731566007759375000/\n 4700605132153172647 7650870675115597779536141098588395119);\n aC6 := evalf(4461919770934 5843038609995810290222092713734357503573021289399188441075277893825000 /304722682986775966780567823708358491602845662906901449616289137889213 7605913688013);\n aC7 := evalf(9483397426652107169315607674597053474 32692833888702670755668800833857753125000/5410020306852381652392054720 3712158257383235486719126879290708372319555115953);\n aC8 := evalf(- 469359986530784242367841163967997985280992052062479522694037718750000/ \n 126200006879774002960489363671712464681453610603090851365 1797310900389);\n aC9 := evalf(-664127481006260866245417353167879111 7254386081601341297887155553784655731178130017572382606930519018125943 41608922016461968723754067215934799054852630446938063/9474053136757793 2788646204486183484687947386153958347999510116829111616884404043875158 4392785913224239894029843821464363224405440877235651675827150051218506 000);\n aCA := evalf(12459468894943123671827871807868857124596796164 1584151713065625000/\n 2442266119995123914599926487344630873 565880304003136401896150897137);\n aCB := evalf(56106474231011098569 9639624014768981793940948761680464947352/\n 6713793915263290 55316725343694451428305592235340194400714475);\n aD1 := evalf(211253 7365439605317842214400294939600845864356126794907105288476157299972777 /979112999257634895438196693571257267376015014427722256867300057498972 3295600);\n aD4 := evalf(6340173256865017488246965527303755786702401 4649473659852800000/75974371795646999000568266827900958765018677940056 24909986891);\n aD5 := evalf(608676173779740463756063981922330580225 8863489403125000/27848590790027885422588467603450510954813164968029323 91);\n aD6 := evalf(-25596656018056374091988888506984281725655172189 73577146475607855715703433900000/1517075781450111169555356439342115045 941218379260955323225394329122945220575603);\n aD7 := evalf(-3562962 724414944757891560164749973139486260772587248231213362868690625000/\n \+ 408976639178968899516222045518619849445955714595234573207901 740578867341);\n aD8 := evalf(27274774093948890572327172846505411328 624378015249298079900000000/\n 11159224869186251417943163509 97246426030217325603407120793811703663);\n aD9 := evalf(151764998027 3287794810711480928689762969941359446589355244683243470868873980537462 717945530891242892188019850453060256773054273287757818339/179310963514 0354951732482295161949269059025910955416969211177149416280508829782124 2848492102923447532215742446890559805801281057084758250800);\n aDA : = evalf(36524642706569597276845612368244490741747970924877885921875000 /\n 67204508345515429491838411146746729660269255184823759889 942481);\n\n # weights\n b1 := evalf(55284231195707975647126708111 723/1258814250475014554517603612114000);\n b6 := evalf(1016520482142 82205518610445783893750000000/\n 2895866582780603102471442500 81091360673509);\n b7 := evalf(6219731958882093270433753490048828125 000000/\n 25268792314562899182186819800834272764054341);\n \+ b8 := evalf(471525882014932587321673707929687500000000/\n 523 728817391198795728810839649314044495553);\n b9 := evalf(639984196590 7450296097946702704438053351349956217971614578815398125835488217018355 7294261050806789914954901252698438375102943237148428019253408419/14067 3838782241599806769359995003242677277239475163095364640616831300634376 1645295132681982453106349996957614630464531120350248540977369786703800 0);\n bA := evalf(594562755257530592552224345703125000000/1238027209 10327682301431417435953442122031);\n bB := evalf(-188669113397970563 9959153870454656/397947585885835383951563312487675);\n bC := evalf(- 50061468875139778913910254637881/141186641936036184819986782313781);\n \n # error coefficients\n e1 := evalf(9388391391220668988650248161 1/157351781309376819314700451514250);\n e6 := evalf(3684943621054112 578045222403231750000000/\n 289586658278060310247144250081091 360673509);\n e7 := evalf(-23030897631588203612782640020198437500000 00/\n 985482900267953068105285972232536637798119299);\n e8 \+ := evalf(4606179526317640722556528004039687500000000/\n 68084 74626085584344474540915441082578442189);\n e9 := evalf(5649345747628 8463487967112077504788488445535088339168126019746293998020902997290797 978356410271902553936661014153550900304650986113700033604670381/123089 6089344613998309231899956278373426175845407677084440605397273880550791 4396332410967346464680562473379128016564647303064674733551985633658250 );\n eA := evalf(-14669361548782295294766012751718750000000/\n \+ 123802720910327682301431417435953442122031);\n eB := evalf(-1886 691133979705639959153870454656/397947585885835383951563312487675);\n \+ eC := evalf(-50061468875139778913910254637881/14118664193603618481998 6782313781);\n eD := evalf(-2965876353908674111604434604609/47062213 978678728273328927437927);\n\n ## nodes and linking coefficients for 8 extra stages used for interpolation\n if outpt='rkinterp' then\n \+ SQRT7 := evalf[Digits+3](sqrt(7));\n cF := evalf(1/2-SQRT7/1 4);\n cG := 0.407;\n cH := 0.103;\n cI := 0.328;\n \+ cJ := 0.41;\n cK := 0.313;\n cL := 0.681;\n aE1 := b1; aE6 := b6; aE7 := b7; aE8 := b8; aE9 := b9;\n aEA := bA; aEB := \+ bB; aEC := bC;\n aF1 := evalf(10993004492887436494004117571860459 /\n 246727593093102852685450307974344000+\n \+ 46972968291008626712917703609971691/\n 825250162463147932 91703009532462104000*SQRT7);\n aF6 := evalf(393520491649539988113 920688240898679687500/\n 20271066079464221717300097505676 39524714563-\n 363949593821876846774279672346619400546875 00/\n 695297566525622804903393344444700356977095109*SQRT7 );\n aF7 := evalf(297729239273747481715758128938402329101562500/ \n 1238170823413582059927154170240879365438662709-\n \+ 2707121338700527402716316949608802202148437500/\n \+ 788714814514451772173597206443440155784428145633*SQRT7);\n aF8 \+ := evalf(186606367807409571432552369913173828125000/\n 25 662712052168740990711731142816388180282097+\n 16694192425 32885428716679888483731181640625000/\n 163471475772314880 11083372737974039270839695789*SQRT7);\n aF9 := evalf(-15129876297 5796588837930757902727558774660569841065859903716233253121056073606775 8348484233711098360161690065478335239139341841703893455539700356373/27 5720724013193535621267945590206355647463389371319666914695608989349243 3772824778460056685608088445994036924675710480995886487140315644781939 448000+684970702351009820339840884884951367749909677993942117002594558 3196912920670999138068398216324416473269678956152917855301514766577940 29515880409825079/9457220833652538271809490533744077998707994255436264 5751740593883346790478407889901179944316357433697595466516376869498158 9065089128266160205230664000*SQRT7);\n aFA := evalf(5649238019079 426925134959620698242187500/\n 60663333246060564327701394 54361718663979519-\n 686015801402044460626291259786540576 17187500/\n 202905662026932139727394273140890007313019302 9*SQRT7);\n aFB := evalf(1356059252547913428720641844389284/\n \+ 2785633101200847687660943187413725-\n 70672113 5012917913496259903558783972/\n 9554721537118907568677035 13282907675*SQRT7);\n aFC := evalf(185227434838017181981467942160 1597/27672581819463092224717409333501076-\n 8510449708773 76241536474328843977/13836290909731546112358704666750538*SQRT7);\n \+ aFE := evalf(3/392-3/392*SQRT7);\n aG1 := evalf(149193441756083 265302617845660428267736079571040191/\n 32938972887429547 50987729451698300000000000000000000+\n 210299260214175497 800699145324926845525768051138857/\n 23057281021200683256 9141061618881000000000000000000000*SQRT7);\n aG6 := evalf(2603316 5344098389625849544750926312914377117008923/\n 2106084787 47680225634286727331702807762552000000000-\n 625906680216 81487676119076963875299636106504933/\n 273771467267179494 7892306576270974288464000000000*SQRT7);\n aG7 := evalf(1408397195 29479285620445388817807587730476041142207/\n 600675291591 895203416555259265546141134091763200000-\n 28926565709926 38208898564136014379977878019317/\n 479760866641176618675 151512302655456288486400000*SQRT7);\n aG8 := evalf(23943142687176 9070479818737141359686721998088529/\n 7644603088938199965 72580032610928570211052800000-\n 107066667362621936301103 50471798611769584382973/\n 142299819570158235891047087945 771168422771200000*SQRT7);\n aG9 := evalf(55985067149422154714671 7229671505830306911518932181359830283414240859214740260024156102452831 7096867614146383116935081262649828706763103112968580318985891895493519 /492358435737845599323692759982511349370470338163070833776242158909552 2203165758532964386938585872224989351651206625858921225869893420794253 463300000000000000000000-773317761921055628003485472710769792311302694 5471780524347502854669431535235534862653028011304780072429180853741793 0466805807777719391733226775149/46365859225883099577283873902068244730 0662109519359343017158294823943709305360826405222053806648141595928244 488865117023387837000000000000000000000*SQRT7);\n aGA := evalf(-1 4319215519426144276217978542916693549455229131/\n 1700573 80684480184793545165057615883314035200000+\n 134564741730 809942492381463993707560640148761/\n 78609479117822820705 93607341855484589030400000*SQRT7);\n aGB := evalf(-53644726534542 9183233886468680888607821697974791/\n 4145287352977451916 16211783841328125000000000000+\n 630619635682383945082727 3410094159347310924207873/\n 2901701147084216341313482486 8892968750000000000000*SQRT7);\n aGC := evalf(-586878043279266058 53729309431208017600379088231/\n 100847601382882989157133 4159384150000000000000000);\n aGE := evalf(-11412529163701589/112 5000000000000000+\n 11035928072465857/9000000000000000000 *SQRT7);\n aGF := evalf(77251496507260999/2250000000000000000*SQR T7); \n aH1 := evalf(1462674827987872272561288370140524783190139 6476237317997085280957459433431153202479983371662780333071432337147841 1134834520494291596016532249483/29264990207182839086475378498587105455 0621040045046749739017560769634157067443125415719182193157223015828793 8031326810199435723000000000000000000-19962865684707311155619416311669 5725424953664495300786080230226604139170055453243394897859651548811320 41275641303128422246029146835607847/7250090476200381292326366530059979 0548896578730347268608700002668062469235090579813134939227835308563316 931451290147657610200000000000000000*SQRT7);\n aH6 := evalf(25762 3737047440005819409098088032301126994929635572679160004344036441265456 4778595616313281486532776433455903264507089981535872970610187/15324930 6403707004673548407204779431433951110320485046090481092914960686593033 551129851444592858079258405163217542594239595977400092720000+244486996 0017609795917508595767128372492917785520504128794451897802446563797931 92532521288123521169517884459161838703231375567718143319/4176247666148 3390348297596414036262746772258479507878285526867882189212251291194411 702363198846497506316283795193076591987012297808000000*SQRT7);\n \+ aH7 := evalf(373399712713007703042260368499869380127254727026786608381 0417452476449595940462735136361973179322799181184217291763857138568654 4699930075/47070316410641534181438933439557115926005110725129449428091 1923887822752337889904932173145095334053920077606520137061338074174268 580121856+123997883988578771904487494025739085124930372291577796935171 2039626110781969967485798175448705950967495482116409119806472663282124 2176781/67243309158059334544912762056510165608578729607327784897273131 9839746789054128435617390207279048648457253723600195801911534534669400 1740800*SQRT7);\n aH8 := evalf(1885103661742568220755047474200803 4097302453837134856870263582733135172201343156358724715192414422362030 794097824450058289210580147319/785502382914836562750983266410840306911 9068885323875770405003413729758514376640089413198978350622792165482196 86237529456841671108774400*SQRT7-6191996753128565937949041209691223770 1701236383434071556198369493749406275935321411253803316348367095792411 9376956029639314612633045535/24389848989505675273418030422056591529614 7088889306342671075355996309001871394674776279828277786837696738222212 5767528963493388792744512);\n aH9 := evalf(6247153035636375600824 8304935514297264654376104858829662179421687444181760203948466353515133 0346989493836313335323613733147456238734681165185167447060648052851615 9856055332454630029724130997307287941244705866751684174124535678357537 164862664942143643/102361350078185679983582905348979382269823653119506 1411593152112040241472832461281703493962220709322830362659418412695048 9100687730631007182449823021058828699631918465661484512641150922827298 8753306044536440661412190393694950733403271800000000000000000*SQRT7-38 3857332263136980842489628156979975300248178494566891848031177233249504 1870678601522800531057003338277736488013357526092203466087751441924700 2571500319906648326342449826636696029256013022586367782106026321762483 2800591429752373896799596516557111015799/51180675039092839991791452674 4896911349118265597530705796576056020120736416230640851746981110354661 4151813297092063475244550343865315503591224911510529414349815959232830 7422563205754614136494376653022268220330706095196847475366701635900000 0000000000000); aHA := evalf(2384184949269060043933088910316 1959188338282895380296695518317677530192603343836489414839296901499519 56923614752939299548390064290872565/3291544937374909778213275534955033 5057562383960829177639791762776551534634647779322812552001498541681529 249082349055850867227189998289152-478613189037941792131586981092848089 1692673631258117221297790797185131068076730193937153852651881465378460 4714333903740003014610927521/83291912378937215459733220346228131040530 5322220200032292867243022928182611284961009749418027338298819465700266 4817445584069452265497600*SQRT7);\n aHB := evalf(-511903801752160 1179146291341634759415389249196054831879835000441491799920119989245919 51738927797079088570990338302169483081711019113721/6702931698616518102 0249870115452818152850375752866489225195361822961042834706237787738448 96700397925963766266481140110937656250000000000*SQRT7+1028472113651690 9411613410933117075130438188342138436338808259511159971600807636170917 7125017370800529826598069538488855360012131660670967/11311197241415374 2971671655819826630632935009082962200567517173076246759783566776266808 632631819215000638555746869239372072949218750000000);\n aHC := ev alf(-36282358909479151946830119353367073016965757083998071216808189410 443757897176752491872687271725179845049151244313857951437370258906709/ 3804981163225947190762262684904025779447045414179088158136900130229131 1095259647975613217840514647786296421827355598520218300000000000000*SQ RT7+102714486584607034868539064270481211744329952813878487399619429734 3155672005254194887231582558164323456593566007964334981786261330585615 01/5136724570355028707529054624620434802253511309141769013484815175809 3269978600524767077844084694774511500169466930058002294705000000000000 00);\n aHE := evalf(-63590252115580541021902954154749243852775034 7315166813488200077746613840418485905651944407103045523646289/13484268 1841695601252270738665745875241357396320659875007943954704649379249916 4519839435867689781250000000000*SQRT7+10665153584381145937888665951763 8882749706415824394000586104270735070904737730266569862196797079265009 457967/215748290946712962003633181865193400386171834113055800012710327 52743900679986632317430973883036500000000000000);\n aHF := evalf( -167843677403568849932833569383743672775891523614248512017265136980532 67139618498432416211551309742025236907869/6892921409425193531588926093 8674445289988123398916041657686442702134927337744138262453963220209885 00000000000000-2788792743139054260642796203290615409061446584865288044 1218486126555684837250510117781624204652683517820519/27571685637700774 1263557043754697781159952493595664166630745770808539709350976553049815 8528808395400000000000*SQRT7);\n aHG := evalf(1602654941825610168 4275768979703370135037184385931344931217759526015625048347980334613605 959237315043/133089078006894390723401512134480128361471388563614284560 99424506082373478313508411025221181728700763708*SQRT7-2889905731371801 5552835372368717123667557014268469510145766282084706053841380217974622 8449616514218949777/66544539003447195361700756067240064180735694281807 14228049712253041186739156754205512610590864350381854000);\n aI1 \+ := evalf(5701735769519335904157382303368291750574657960145832113859337 65115327/1280672175777763386131645992087230182920707683263474374957275 3906250000-15946857420519626461858387622511280474023747617113433107927 014/2832794004215469966315509352354475639523074452901811981201171875*S QRT7);\n aI6 := evalf(-150166820206298374634814671775636147064844 4074544085292374528/\n 2648273970365107624836789164495563 3159811382049922162757828125*SQRT7+\n 9673305928547605025 87118663224399434525203125750769358463821952/\n 568895724 4724821181226667210075219421744202502806686309008535625);\n aI7 : = evalf(98482428438304783041138796462250167454370676153089129630634400 0/\n 4901119069627463296775176174880175762363769187051047 406382094669-\n 16515501703971462044534687835635272646804 8735015714258273178112/\n 2500570953891562906517947028000 089674675392442372983370603109525*SQRT7);\n aI8 := evalf(-6328119 41219045645608068008109879833628563815355821672553472/\n \+ 28995172634611676322206008030977856627596695410624981878948175*SQRT7+ \n 939456417819107059805248297421900930763478086788468055 5866880/\n 1810811564015487472574639562421591011299125795 12268365090961559);\n aI9 := evalf(387439824754200466900727076752 6613229765400595262485470656178145030777299156063566909354884414272572 4441601415990815840911085080300530868197823612053560620794685362139545 158/104084050452402989000897482562583766938315277106042243476374955908 5049006504291081488224823290554031656552661465485694953521412770000336 618889800479107381560495049285888671875*SQRT7-163499881708883026125445 4093369993309624130255535337643119983849910953526988205461483863311703 9979970677952978499882097934379350467215186106224800834442204444807855 588328441729/832672403619223912007179860500670135506522216848337947810 9996472680392052034328651905798586324432253252421291723885559628171302 1600026929511184038328590524839603942871093750000);\n aIA := eval f(87322841968181700328776555261353388004218376519813171302080/\n \+ 89501874017155100213883912885162289819534890686940853526247549 -\n 18390117828407067629139912258173732321550124449693030 4/\n 5388854406354586345925719690859008363474071814340459 89775*SQRT7);\n aIB := evalf(-25351500468540496596820050492194609 5969310331152670047291904/\n 14599591869650093823815482172 639346561784693969195709228515625*SQRT7+\n 133296351577300 90039743312065619769895421219982623463164806551936/\n 9657 6300217735370644539414572009277506205750606229616546630859375);\n \+ aIC := evalf(11728556510037423292966195109393963801376048268303895870 08334411/\n 342640186847628615730655864998255898956687670 73159142730712890625-\n 325956180520214298275451683186503 454558472257723971096622432/\n 36258220830436890553508557 142672581900178589495406500244140625*SQRT7);\n aIE := evalf(-7040 86618717801297101565140748672/\n 330999409316074334721347 6287841796875*SQRT7+\n 9092264376827749024602245474024978 8/\n 43029923211089663513775191741943359375);\n aIF \+ := evalf(237986549524779046090097905072476481379936/\n 13 077267410425357833969565130331207275390625+\n 23281346341 5789218524834781127942692096/\n 4184725571336114506870260 841705986328125*SQRT7);\n aIG := evalf(12180933705156839631084542 828544/\n 363625543191383053320249836753383*SQRT7-\n \+ 133717771817136675415691789554556928/\n 86361066 5079534751635593362289284625);\n aIH := evalf(2719657111931767137 38248036352/5358229907355833457290183780181*SQRT7+\n 3023 390475422298581288228324040704/165435348389611357993834424213088375); \n aJ1 := evalf(9290250839155906706259466577053109993552717926499 66719936523274177/\n 194282712295767364059082295688492401 08308217298693300147500000000000-\n 230162554602991620014 348061420509607763938392979255117340452439/\n 33416997814 847707148241579764862524792121157322167167000000000000*SQRT7);\n \+ aJ6 := evalf(666459602209081669294718666055533131718477617118784610975 974455/\n 33496580256939747115062616532922891955229864336 52576898744225776-\n 253988955442171447173519820247296001 742718502682148945582939/\n 36609739366327247805743773409 98666728012325454581239779642160*SQRT7);\n aJ7 := evalf(183503800 44401781997772633192134968894319591287460260296826678125/\n \+ 78417905114039412748402818798082812197820306992816758502113514704- \n 905267454740676248556101847817827064774129892121284490 102571375/\n 11202557873434201821200402685440401742545758 141830965500301930672*SQRT7);\n aJ8 := evalf(81385501950412621554 258853488967135644871304790336761998521875/\n 12340345473 29072944273087701798417578070515356676199228768034328-\n \+ 42367015988927728983404156483889088330102793100264210222386125/\n \+ 1586615846565950928351112759455108314662091172869399008416044 136*SQRT7);\n aJ9 := evalf(-6718992397540704954738223373737051132 6635612419824395377493434450778522871628636954079422075596189530056005 7823483180937995340534338854264674003087064648313500850292838680833/34 1062616522434114358140870861074487503471500021079223423385455520988858 4513261015820615100958487450932191761090103525223698965364737103032778 098209939067897430177500000000000+621328547470963721310000394248808679 6602828933125724494631085237979245010835166482952836500771199136849240 0471047502128351605591869243489996078500259607194930584828574513487/13 6425046608973645743256348344429795001388600008431689369354182208395543 3805304406328246040383394980372876704436041410089479586145894841213111 239283975627158972071000000000000*SQRT7);\n aJA := evalf(16612534 73075890661875205329220788398755350896754432875278125/\n \+ 1432029984274481603422142606162596637112558250991053656419960784-\n \+ 517114854250152073779159115907139203541421664186374755125/ \n 123848807508603645236603260223198073812706508065898185 5540496*SQRT7);\n aJB := evalf(2114245715677507179918284976746877 2858407134946378536528580453/\n 1648235523716016992333472 67536229166943924481034631878906250000-\n 476433188255453 7564494123931264199862242584394061601881803/\n 2242497311 17825441133805806171740363189012899366846093750000*SQRT7);\n aJC \+ := evalf(2613354856150035268384554124378342527830022797532778670536366 1/\n 7017271026639434050163832115164280810632963496582992 43125000000-\n 882104525583093744646785934258085896377598 304201987537632781/\n 80197383161593532001872367030448923 550091011389519913500000000*SQRT7);\n aJE := evalf(36272512108451 8107612890529056236583/\n 1903506107104331226926170402050 00000000-\n 6192560832233097004995782460158497/\n \+ 23793826338804140336577130025625000000*SQRT7);\n aJF := eva lf(644040594747040962567402892951326118622213/\n 28924823 149075223471487242937871777500000000+\n 78755144851059918 920721614715685552171/\n 11569929259630089388594897175148 71100000*SQRT7);\n aJG := evalf(-33565843965317599212575724478486 25/27635541282545112052338987593257108+\n 283166128253841 394303139576871875/6908885320636278013084746898314277*SQRT7);\n a JH := evalf(-1304426822605144782222827988365875/1429361410086242133066 72942520108356+\n 2219126155800658322448843719115625/3573 4035252156053326668235630027089*SQRT7);\n aK1 := evalf(4537991164 242176235838964694947505179949423475326507441488276915388023909/104912 664639714376591904439671785896584864373412943820796500000000000000000- 13393690629097481827677222562896635108516060384068926724254494095431/2 599099830043710555974345092822640817164978902835224100000000000000000* SQRT7);\n aK6 := evalf(581081739753884585359049711037336254030079 31500378949954935791466011/\n 368462382826337218265688781 862151811507528507701783458861864835360000-\n 49267346408 97508844291100252303949113654346310673524973303509977/\n \+ 94914139097885457274150523655520989244763993266921031324056000000*SQRT 7);\n aK7 := evalf(3310477780464539047245850780952017063265093070 39766736025735157625/\n 177386709499344326768800859074283 8786267935220251303226806429849856-\n 1555101909217232997 38155439313614082417143748488424430295607839002971/\n 257 2107287740492738147612456577116240088506069364389678869323282291200*SQ RT7);\n aK8 := evalf(25001161994038222601896281232577047892112091 077704297269331307095/\n 53310292444615951192597388717691 6393726462634084118066827790829696-\n 1972347608019984541 3806424433570079463991175604941622855626613281/\n 9872276 37863258355418470161438734062456412285340959383014427462400*SQRT7);\n \+ aK9 := evalf(-530640570185540233187921547874610321032475997277639 4142249372099161141895366111789004127410769703307514302805873691653690 241429519717963843517920027332165058635413295422534493608563/279671345 5483959737736755141060810797528466300172849632071760735272108639300874 0329729043827859597097643972440938848906834331515990844244868780405321 500356758927455500000000000000000+190596634761549317114496169579335847 3929392939256879233873065420375135193905039419544996630813863016734834 2686861350532526147129440387298766203391445690578037967986939338114497 8041/55934269109679194754735102821216215950569326003456992641435214705 4421727860174806594580876557191941952879448818776978136686630319816884 8973756081064300071351785491100000000000000000*SQRT7);\n aKA := e valf(7827096293296022356966855696155091464680382671020545117303695/\n \+ 869094059421754352421714133395231062523483628187673943206 5968896-\n 8024562048602783801851340843867974824031427813 0660373624163/\n 2568716007585853382685104656481145234633 91275988529570038028800*SQRT7);\n aKB := evalf(335606302873888140 0495526284368410730216883111042714927835266511741/\n 2472 3532855740254885002090130434375041588672155194781835937500000000-\n \+ 83174242742505155147000573265634506386980797317830685403247 2561/\n 5232493726082593626455468810673941807743634318559 7421875000000000*SQRT7);\n aKC := evalf(9094828936541987759197494 951565982925258614895987874562593898589037/\n 28069084106 5577362006553284606571232425318539863319697250000000000000-\n \+ 17110566542221833203280944072580741409056732956292955551549693983 /\n 20791914153005730519003947007894165364838410360245903 50000000000000*SQRT7);\n aKE := evalf(368780935089884428749291026 741390617523/\n 17625056547262326175242318537500000000000 0-\n 17159972237439760987654927990971025453/\n \+ 88125282736311630876211592687500000000000*SQRT7);\n aKF := eva lf(1784676650751294888760195703237737396188742337/\n 1071 28974626204531375878677547673250000000000000+\n 218235417 594177155878192971033140037237679/\n 42851589850481812550 35147101906930000000000*SQRT7);\n aKG := evalf(-32946007692930366 879639054923288980743/\n 22108433026036089641871190074605 6864000+\n 6779557438088612987963459146906377/\n \+ 221084330260360896418711900746056864*SQRT7);\n aKH := evalf( 1248442048911252346919046315648608689/\n 4235144918774050 7646421612598550624000+\n 1967787828348029128929066958860 833/\n 42351449187740507646421612598550624*SQRT7);\n \+ aL1 := evalf(15946353198132090698178240536408217505776914289821925356 872421859048349/\n 35324129508321338919833144670634982015 1058496339878184500000000000000000+\n 1595482934291992280 40965211119678644721142581524006753651131776349/\n 337545 43247320916311355131075618711911233492244613300000000000000000*SQRT7); \n aL6 := evalf(3047286499893723100206956376555298863778797166533 826594671949384961/\n 13646754919493971046877362291190807 833612166951917905883772771680000+\n 58688238059346860548 256995488011909974969139693748622118817283/\n 12326511571 15395549014941865656116743438493419050922484728000000*SQRT7);\n a L7 := evalf(1469918318272377469160652404247364788697780839115973380910 0537842485/\n 5144214575480985476295224913154232480177012 1387287793577386465645824+\n 7026603404348724613767080930 49550126257900512792888851801476930831/\n 126704792499531 66197771489933877419901913823001795023048617356070400*SQRT7);\n a L8 := evalf(-684776402790409025060337696005662417202278623261610136849 926795/\n 19744552757265167108369403228774681249128245706 819187660288549248+\n 25844494544887962046423521702510128 65277596868322522034523256489/\n 141032519694751193631210 023062676294636630326477279911859203923200*SQRT7);\n aL9 := evalf (-25172371735577443288715831450094139056721274361917506595199455188379 2454173597333221020170178078839576565661835811645379226656113348016017 55289458710498947200398285891949263419777971/2796713455483959737736755 1410608107975284663001728496320717607352721086393008740329729043827859 5970976439724409388489068343315159908442448687804053215003567589274555 00000000000000000-6028369384119140409283910499064797490388997095079695 9110449009435736795141994457088542675582313717390948796351309706905215 88253922777471551529063039132364492797155096379615894707/1928767900333 7653363701759593522833086403215863261031945322487829462818202074993330 8476164330066186880303258213371371771271251834419615481853657967734485 219027085900000000000000000*SQRT7);\n aLA := evalf(85865369733620 73986309990432468697502731752264122579944801865/\n 933471 3971566991192677670321652481782659638969423164575181966592+\n \+ 32962128003502138886110488461347314041652592053166156613/\n \+ 115034303967122856367447588736280574770887270930823811033600*S QRT7);\n aLB := evalf(7624864497550093952607391092470276685033970 98734714457643152554311/\n 915686402064453884629707041867 939816355136005747954882812500000000+\n 10898668440051573 1040472872387948295340713100507717456596034809/\n 7474991 037260848037793526872391345439633763312228203125000000000*SQRT7);\n \+ aLC := evalf(104031457394558469022324510227030807490232774278186314 7786171901527/\n 1039595707650286525950197350394708268241 9205180122951750000000000000+\n 7731272426797364557128892 0656177737701516626731063760210013763/\n 1024232224285996 5772908348279750820376767689832633450000000000000*SQRT7);\n aLE : = evalf(2316319721982337648659570939507599438291/\n 17625 0565472623261752423185375000000000000+\n 1573979986866052 5624196411873873002899/\n 8812528273631163087621159268750 0000000000*SQRT7);\n aLF := evalf(-564474293861553321580288792297 74125419236299/\n 369410257331739763365098888095425000000 0000000-\n 6902554767565083497519218291815297321733/\n \+ 147764102932695905346039555238170000000000*SQRT7);\n a LG := evalf(21205887321457764160789603735887003/1386108653669974272217 62947176211200-\n 19493655492912186165500596164489/693054 326834987136108814735881056*SQRT7);\n aLH := evalf(-9725688703893 07199247149947318850447/\n 423514491877405076464216125985 50624000-\n 1804932209307883337350421660577439/\n \+ 42351449187740507646421612598550624*SQRT7);\n end if;\n \n \+ xstart := evalf(x0);\n xend:= evalf(xn);\n \n sgn := sign(xend- xstart);\n h := sgn*hstrt;\n\n eps := evalf(t);\n safety := 0.9; \n pgrow := -0.125;\n pshrink := -0.14285714285714285714;\n errc ontrol := 0.000001101996057; #(5/safety)^(1/pgrow)\n\n tiny := Float (1,-3*saveDigits);\n \n xk := evalf(x0);\n yk := evalf(y0);\n \+ \n if ymaxtemp<>0 then\n ymax := abs(evalf(ymaxtemp))\n else \n ymax := max(abs(yk),tiny)\n end if;\n \n soln := NULL;\n finished := false;\n f1 := fn(xk,yk);\n\n for k from 1 to maxst ps do\n if errcntl=0 then yscale := max(abs(yk),abs(f1*h),tiny)\n elif errcntl=1 then yscale := max(abs(yk),tiny)\n elif errc ntl=2 then yscale := abs(ymax)\n else yscale := max(abs(f1*h),tin y) end if;\n \n if abs(h)>=hmx then\n h := sgn*hmx; \n maxstepsize := true;\n else\n maxstepsize := f alse;\n end if;\n if abs(h)<=hmn then\n h := sgn*hmn ;\n minstepsize := true;\n else\n minstepsize := \+ false;\n end if;\n if (xk+h-xend)*(xk+h-xstart)>0 then \n \+ h := xend-xk;\n laststep := true;\n else\n \+ laststep := false;\n end if;\n\n # Do step.\n do\n \+ t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t : = a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n \+ t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h) ;\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6* h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n \+ f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a84*f4 + a85* f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n \+ t := a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n \+ f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 \+ + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8 *f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n \+ t := aC1*f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA\n \+ + aCB*fB;\n fC := fn(xk + h,yk + t*h);\n\n \+ yout := yk + (b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC)*h;\n\n # error estimate\n t := aD1*f1 + aD4* f4 + aD5*f5 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA;\n fD := fn(xk + h,yk + t*h);\n\n yerr := (e1*f1 + e6*f6 + e7*f7 + \+ e8*f8 + e9*f9 + eA*fA + eB*fB + eC*fC + eD*fD)*h;\n \n \+ err := abs(yerr/yscale)/eps;\n if err<=1.0 or minstepsize the n break end if;\n \n # Shrink, but not too much.\n \+ if prntflg then\n print(`reducing step-size and repeat ing step`);\n end if;\n htemp := safety*h*err^pshrink; \n if h>=0 then\n h := max(htemp,0.1*h)\n e lse\n h := min(htemp,0.1*h)\n end if;\n if \+ maxstepsize then maxstepsize := false end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true;\n \+ end if;\n end do;\n\n if outpt='points' or outpt='rks tep' then\n soln := soln,[xk,yk];\n else # extra stages n eeded for interpolation\n t := aE1*f1 + aE6*f6 + aE7*f7 + aE8* f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC;\n fE := fn(xk + h,yk + t*h);\n t := aF1*f1 + aF6*f6 + aF7*f7 + aF8*f8 + aF9*f9 + aFA *fA + aFB*fB + aFC*fC\n \+ + aFE*fE;\n fF := fn(xk + cF*h,yk \+ + t*h);\n t := aG1*f1 + aG6*f6 + aG7*f7 + aG8*f8 + aG9*f9 + aG A*fA + aGB*fB + aGC*fC\n \+ + aGE*fE + aGF*fF;\n fG := fn(xk + cG*h,yk + t*h);\n t := aH1*f1 + aH6*f6 + aH7*f7 + aH8*f8 + aH9*f9 + a HA*fA + aHB*fB + aHC*fC\n \+ + aHE*fE + aHF*fF + aHG*fG;\n fH := fn(xk + cH*h,y k + t*h);\n\n t := aI1*f1 + aI6*f6 + aI7*f7 + aI8*f8 + aI9*f9 \+ + aIA*fA + aIB*fB + aIC*fC\n \+ + aIE*fE + aIF*fF + aIG*fG + aIH*fH;\n fI := fn(xk + cI* h,yk + t*h);\n t := aJ1*f1 + aJ6*f6 + aJ7*f7 + aJ8*f8 + aJ9*f9 + aJA*fA + aJB*fB + aJC*fC\n \+ + aJE*fE + aJF*fF + aJG*fG + aJH*fH;\n fJ := fn(xk + cJ *h,yk + t*h);\n\n t := aK1*f1 + aK6*f6 + aK7*f7 + aK8*f8 + aK9 *f9 + aKA*fA + aKB*fB + aKC*fC\n \+ + aKE*fE + aKF*fF + aKG*fG + aKH*fH;\n fK := fn(xk + cK*h,yk + t*h);\n t := aL1*f1 + aL6*f6 + aL7*f7 + aL8*f8 + aL 9*f9 + aLA*fA + aLB*fB + aLC*fC\n \+ + aLE*fE + aLF*fF + aLG*fG + aLH*fH;\n fL := fn(xk \+ + cL*h,yk + t*h);\n soln := soln,[xk,yk,f1,f6,f7,f8,f9,fA,fB,f C,fE,fF,fG,fH,fI,fJ,fK,fL];\n end if;\n \n if err>errco ntrol then\n hnext := safety*h*err^pgrow;\n inc := fal se;\n else\n hnext := 5*h;\n inc := true;\n \+ end if;\n \n xk := xk + h;\n yk := yout;\n f1 := fn(xk, yk);\n if prntflg then\n print(`abs err estimate -> `,eva lf(abs(yerr),5),`abs err bound -> `,evalf(abs(yscale)*eps,5));\n \+ print('step',k,` `,h,` `,[xk,yk]);\n if laststep then\n print(`last step`);\n elif inc then\n p rint(`increasing step-size by a factor of 5`)\n elif maxstepsi ze then\n print(`used maximum step-size`)\n elif no t minstepsize then\n print(`using error to adjust step-size `)\n else \n print(`used minimum step-size`)\n \+ end if;\n print(``);\n end if;\n \n if (xk- xend)*(xend-xstart)>=0 then\n finished := true;\n brea k;\n end if;\n\n if abs(yk)>ymax then ymax := abs(yk) end if ;\n h := hnext;\n end do;\n\n if not finished and k>=maxstps \+ then\n error \"reached maximum number of steps before reaching en d of interval\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt=' rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,c 4_=c4,c9_=c9,\n a31_=a31,a32_=a32,a41_=a41,a43_=a43,a51_=a51, \n a53_=a53,a54_=a54,a61_=a61,a64_=a64,a65_=a65,a71_=a71,a74_= a74,\n a75_=a75,a76_=a76,a81_=a81,a84_=a84,a85_=a85,a86_=a86,a 91_=a91,\n a94_=a94,a95_=a95,a96_=a96,a97_=a97,a98_=a98,aA1_=a A1,aA4_=aA4,\n aA5_=aA5,aA6_=aA6,aA7_=aA7,aA8_=aA8,aA9_=aA9,aB 1_=aB1,aB4_=aB4,\n aB5_=aB5,aB6_=aB6,aB7_=aB7,aB8_=aB8,aB9_=aB 9,aBA_=aBA,aC1_=aC1,\n aC4_=aC4,aC5_=aC5,aC6_=aC6,aC7_=aC7,aC8 _=aC8,aC9_=aC9,aCA_=aCA,\n aCB_=aCB,b1_=b1,b6_=b6,b7_=b7,b8_=b 8,b9_=b9,bA_=bA,bB_=bB,bC_=bC\};\n return subs(eqns,eval(rk78step ));\n elif outpt='rkinterp' then\n d12 := evalf( -4276708071970 6994214826098811577836103004340076889065752017053876712720653166424534 8935563977208797009188006255831069131439615964452711582024053453260758 496412839934800660785544607213235662670607494711912043641/388342725791 1508463335556821214952718450131947992769456517674920271127183981999980 2516020259621934833276269855463423456555827187682035459017797956414271 204791971357367709288916912371125468022779935304798809000-605595256826 4787871651767816863932869433563428092711977628455834642591758130275420 9554746237179793756725339947577104188093193567018374252795506271471737 0654124557950939859113759240644426253254099/54772874056977011802720410 1314583410589721216751311191174911427901362735539692918781908257726849 6476925819267057332407467107014823277229440039212233747371932119594775 2600012028798049816493920871500*SQRT7);\n d62 := evalf( -11191193 6073838062156168064927615447958949050205680518269794101247895846545080 1990777924235910010754821999481911378941363375078388288217981790847109 314377280752938880909044895972944746778846200162500000000/782410692577 6278843640399372409155289003764023991041476819295975570581250904893128 9905761068522644757161303072874580548223289726342989795046360435725622 9078575943178579125996221471705238443336332011231269+40683781260066421 2148865353658043420733729368208952459457630032859253096024246740188035 1813783006633667826713981821912779753051406793630130470592143554276713 267963465710207122246770068461634925000000000/444848888756510837263835 4158225941134216186903272498498526021123234109741317163317486280729648 4446851897730844109293288287489142067920619257128006934300649952478374 701823217176471635414894771630917026527*SQRT7);\n d72 := evalf( - 1653420364071587256450819383006903798685521273068380918242164978552924 3257372847994329444525960892334733310385503726040004011158820098511845 6566722819519266976106158640276805809695909353675738847656250000000/16 4851176693614271997777456208378008274367581535778356823249751464341775 6103795209726966470115020897107396987623759340495385509469163923037408 44221451500367272124188565311577099536497515077433904700002291159+1797 2122581415495707235813485206881817167351067364567131430152204971169284 6729986356986553700402886004186641254057580081100751813209230067945492 611039517106943314441340402273308220768762145453085937500000000/280247 0003791442623962216755542426140664248886108232065995245774893810185376 4518565358429991955355250825748789603908788421553660975786691635943517 64675506243626111205610296810692120457756316376379900038949703*SQRT7); \n d82 := evalf( 269865116704199962643907094108650171690576155002 4779561841821240713956446591299072245071452826495439988564457250154463 9504126347167293484852633517270035609644156560646614097482575854238761 36093750000000000/1150473101387209294754872764761956595012030625602816 7862846816167057890954408912732209619480180661169001809663089606288374 4954919267944849586142117826353951989995134592745928083139057584535265 64511163978237*SQRT7-9707500418972183084680345281095239385601034010343 3353207053387864777457776688601984201569124993156750442783803451320873 5529683966205469502730287058701222322232594465446447596373996525237729 682109375000000000/264608813319058137793620735895250016852767043888647 8608454767718423314919514049928408212480441552068870416222510609446326 1339631431627315404812687100061408957698880956331563459121983244443111 0983756771499451); d92 := evalf( 3236197377609 9085243803843908697686729431907631659830542438476329007826950413828843 9931249979238412267307013091723792659591859318709394672174866033935082 0469430162921435804873343393565206945357871613957451204888561567923958 1884999238058593352761514660120980977232247428856707722098168589660426 30379259384322207/2730284316899806508255927217759785088307699384384995 6223341482633945475941910156658786193604661231747722428564108721079169 4363476942637322565836307551473076800260183999701147056770051182127388 0789643814902856924294822316897948192532490187648108541997171249466754 316455502593482495493878261683455394536983369500*SQRT7-101227340927535 1179702886323253959665554571472006315130369092735866493685676870048547 6352770058114131680333726404589340352051738709990270896726861013659540 5572949173444430918411269713117707480888913868300918284243146593931709 8770851907340314111111356747020522643233112859291144998741109284791711 83767942987510149/5460568633799613016511854435519570176615398768769991 2446682965267890951883820313317572387209322463495444857128217442158338 8726953885274645131672615102946153600520367999402294113540102364254776 1579287629805713848589644633795896385064980375296217083994342498933508 632911005186964990987756523366910789073966739000);\n dA2 := evalf ( 30934722867635789390636259246341724701151228673540950748684456059738 7286645730450673779844878793082885852486383137927624155524405237368221 177208022581351829937829302645032917332715800648867187500000000/247233 6056305583640711631599734300504561284562029010081076877923548287038888 9294561683584795482635678579610334701910405379731993644921744685510504 7775518823285687636578985583293813654246535447387362361209*SQRT7-11127 7381406623715006569804519871284136165375622345620198921914128269222473 8901080830241038247997635064865898970661014556928917977002817488205983 30459484704513141381613227300728434592602454511718750000000/5686372929 5028423736367526793888911604909544926667231864768192241610601894445377 4918722450296100620607331037698143939323733835853833200127766741609883 6932935570815641316668415757714047670315289909334307807);\n dB2 : = evalf( -248353256458614393233014050134468639581689964897603915956511 9914255547732275924109429122818974576862695445649367557968790585669130 49639547162240004221238134126211674443813183754941164470658916923904/2 0105908815359456723765687574179745494418241663881731706980036266102013 7820629308466660013393409352769463576316926882702750758038589625108082 807958938824074000703548479361841509297690789332507939225*SQRT7+228482 9350856924924648630432747871236816988997094521544107413734494389680867 8966124344577254310060199675896982305448545108679044921061363711580577 5335077931575045452344525387962284269840131539508992/11827005185505562 7786856985730469091143636715669892539452823742741776551659193710862741 1843490643251585079860687805192369122106109350735929898870346698965141 1806091087021284794664570046431323996425);\n dC2 := evalf( 194459 6951253515664560945499119258664395144163973333445340871546714784182277 6928804824458394369170016698980178666856344558963729348968552431845069 03873617599603554854771109409178905940066626110538/1345908616257915900 8260804984951186633570769316143106736874112887995556107018862580700893 7992957615857287641257454661279182394477058098129891076852413752872295 0870884782635405451113641611753960059-12433596489825502829191891538744 1913956264225960840174862495959224045055940519542781082790689625883257 2606986054711939217417436593473806555323382202078717291414993043284752 59926345583877364265468/1345908616257915900826080498495118663357076931 6143106736874112887995556107018862580700893799295761585728764125745466 1279182394477058098129891076852413752872295087088478263540545111364161 1753960059*SQRT7);\n dE2 := evalf( 873144153942098470010492615682 2568033011754073425381276807896145265607381008340275890546581200043308 3199932806507036409409951745607581348126253881897599956567215486481576 11552593/2857693760706055003865338340208891002526413817143817808291001 2351668653490830639518672584257263514584392697634260008161797825914789 562622660386201444317906340488417651297667399848-888837268848866849165 0493561568978460307303780875214497943069289606193993568411124689923435 5840253754351856089743258510883199662443961897113416531032190139303482 82459663339/5238092530071953596057882433112565075383851120213757988655 6954966765623379336167458524423083187027246119029317142034170023143036 1272135469249692086009199837607016966993505158*SQRT7);\n dF2 := e valf( 6746849611385340761950931902295113046079025362148543565353105774 6646683409865671769715124704290051573094298508219776891865183647994799 205894282797980308324058070882013765264/180913216209861133484071951613 6290410854790243312670149184667449791597415530219725760703215382497060 5902894917838846084817724893738387033954387633345835153045067203682547 391*SQRT7+134103955768855239822429885984057981849782068974015506565685 1945767101683630137500799058715175220209119809141632361089713373564026 535449166992568398257406005419448259195111740/542739648629583400452215 8548408871232564370729938010447554002349374792246590659177282109646147 4911817708684753516538254453174681215161101863162900037505459135201611 047642173);\n dG2 := evalf( -312922239374763073365158496648468727 1032652738167841437380509890615873461955970599703451790529637948210534 9606293104795390757949373120690436289804552117151489703250000000000000 0000/27653604242128589804092358076137289040180250400871229367805015999 3946157629234905320311938432661330444667074116637144956400038985814718 43868860928072454180143006759614581137313193-1546281936192839578207556 5444125706384963902578506349981246684395499893157858288275392235020997 7055882677066304356815775933555287580344352701526098258835742600000000 0000000000/11457837026624538453991223602196505935413671540980244278169 5605153467836316913915964844536974224813837385001146312691870512257660 343117881711121677856955969285425623322800143*SQRT7);\n dH2 := ev alf( 44593836251622129667416171180898311966756448985352779370045858446 5668805535932018834320894135971564369887965134127459829243952922696646 70789668920969572000000000000000000/1308122766041311573390427202560530 4812331965323603914541917564088260181991348158169503303307623802357804 87168484006146597476014712162464190508432991151531807029434770144237*S QRT7+30657579747742359128647923391476176634117874678469372928921754325 0192881399698776176148335481798049569759434845732521902615624828872295 72474041071739228795000000000000000000/1432705886616674580379991698042 4857651601676306804287355433522572856389800047982757075046479778450201 4053356548248292246390230182760650839912828375221358245531795236730083 1);\n dI2 := evalf( 735443125384190589851518592579251727112410174 8223933082014097769419900019869122489717506459635718522970357990666410 2226101188408290303858507871029521747617567506299689306640625/23218143 0265703453060966617099542863422234686718674855593467027142838565920223 0677819780996683568214914786811176578962866256968126208769859486383323 16028040999125307245345432+1328071302409684166548049029721120581151361 3029631090740788561132917037442488782046860652333621755601503743775730 699600093522182809462675098951436597557583628546028662109375/141574042 8449411299152235470119163801355089553162651558496750165505113206830628 4620852323150509562286065773238881579041867420537354931523533453556848 53829518287349434422838*SQRT7);\n dJ2 := evalf( -5392953613561690 6539386153672386218864436316348875233623187911644671886648115176812301 7738901286432153564061047502236927412182525537129292935510438719639636 22975296642480000000/2024022225517549426492896141677038714623165999913 7469637244401547266291512565162731255150864075703169333350495854833516 65459619557357202473404152022651053991360315269020332113+5686655499065 3444762190243326301276310814387525261348662342821170700789603294477743 1094739318658341684977028675124965578952727560825107876895797971493848 167351157920280000000/493663957443304738168999058945619198688577073149 6943813962049157869827198186625056403695332701391016910573291671910613 8181941940423346401790345171284172048569763787049276393*SQRT7);\n \+ dK2 := evalf( -155584137714478655095343352993637192085029222654477180 2489818379873573940979472514032840556363059543603976438613052217047915 290560452720250614743549219691818504512253400000000000/508999989984530 8246344392692507588892371168891484550728830589369090386449397537466921 3186680385670711984994196165197026286035528591942335947158127068058539 17237104020239704327-7036960136625871062238612757792252366227355848161 3934025013508703346119143056309067923804622105169453721303274514369655 590592710556113768400156574081522337541261300000000000/494929841629631 3060759931774906670682955713604721746784527590718659911813555044071183 3908426545311152089867950153685120711522253110653750747340865325240974 33068443970228911*SQRT7);\n dL2 := evalf( 22482894592792899814798 7521362349157418389276041804773620054288908853126706577702552629819537 2073135645540467927746654342604426607970534805588251195523153386285524 500000000000/794736001941708814288387039976179165346403485593234185587 5685393360489066058506488234171974275332143299350848883594977859718428 79088620310352939309090446156015734228937791703*SQRT7-1921513292165708 4821085714058882327133741814096398091562130439904734510824249325455339 0898391903910572278519073024055569886226981012117953287365536109736879 43211204877000000000000/4149316666137661719399668735715631422273572598 2822756829526953438735113413891462375070611877691509120165910782021249 37940558991671721686640352696132761219380558148409284210481363);\n \+ d13 := evalf( 392571522089558191667372300561921626246711365929727295 4092534916004849852336769160987931815415919689355876907791354703506303 3157155965608546585139414842858678472453634391617484200271686850254295 258969100891368093/651356662804248464986736575921962524140044858549696 3315704645661727481504042536330512914307182042706126792534848183297940 5001055703050383534397481440300338946533776675839670956093931569535001 8445278521398205500+44051201832365111711237347213116533823317553387840 0715002344042091484816087421273761104740207551997083933172043810173723 4364063064131609263088712494790677495843631613590839114626705679889929 7510396609789/47867509937853966086819580681078033064146647070818816076 3274171924982601790817875340192372522929850113929353234739345606022867 2275566646276013980641565809634733060739037079649229500192139402773364 36419500*SQRT7);\n d63 := evalf( 35040964036556494797460042895241 6835545823167196150980980288769633968083869179877366829747746489981508 9951265105112862296810345339104115052802178939550087219072215327899247 493506630830392616383828475000000000/188113885086878247054954173482351 5478770476407482417543640982160983612606467562162298734226833194444661 4639010235417008951399515633607403580432087618031907703475890993552415 0234390982845185733578110700317961-56125985650670103422895038387002160 2986015305557209139064284343807424124867232426785147859556044884775077 6542948049545490464226958247089556819714362561183486532300942234021609 30428124246256925000000000/7373186001489129899400587002584432819142851 2208936439202088747898907896264925358853363768999697978207565299741617 6131850068880807755590374427536026535369888715111182903147246018866885 329747596092547401*SQRT7);\n d73 := evalf( 5229350172112047515494 6312239542999507193819155614438030301329771769534362035106966715404367 5159451132936522320128358129687030301380497256219079470380822950845425 3887916323576949735581734383965351562500000000/40035285768449180342317 3822220346591523464126586890295142177967841972883625207408076548999885 0765035832249827086272684060221951567969527376563359663822151776608730 29372899544384588636822330910911414291278529-8264579994573193869010182 5893086661929927277403583597575896525215719091014124695707293039048778 2305260218378238803418299875127521947928018166385151129037669249235868 5371857525670130475226439570312500000000/15483259689455484110288490362 1128516058798281000454810275980429552144209136820544559991325922405277 6288715402740547446874118986794242358653919531361699174720235420555585 7993429238234573239316996574033364363*SQRT7);\n d83 := evalf( -67 3857390083564146529041020736177097992543781905849187138315720875714255 1453783740546356608420920473159089329213330290771837710893204069112701 7146614268884851524834385732703650699877091607045468750000000000/34514 1930416162788426461829428586978503609187680845035885404485011736728632 2673819662885844054198350700542898926881886512348647578038345487584263 5347906185596998540377823778424941717275360579693533491934711*SQRT7+59 8838739083156303256302594103909485944451286393931123621960118130192480 8343979871402651895631707971944221130443029681297930777642224568886978 877897939461040163677893549400625909133991813345135468750000000000/125 3410168353433284285571906872236921934159681577805656636468919253149172 4013920713512585433670509799912497896102886851018529299099191886244384 9570473975095062784172951044247964262025894730526255463733868161);\n \+ d93 := evalf( -269361171401019915826849769014407321939381919346365 0778788646391272460080812539119433999738901045115146209679773538338202 7396948208832794157339951693560414434630442040013972621144579639756060 4781591338509788357592189922109536351876885254703081521445264411008176 66564282538078916963964308548809254181480614419049/2730284316899806508 2559272177597850883076993843849956223341482633945475941910156658786193 6046612317477224285641087210791694363476942637322565836307551473076800 2601839997011470567700511821273880789643814902856924294822316897948192 5324901876481085419971712494667543164555025934824954938782616834553945 36983369500*SQRT7+6591456554922982575654398712437393592703015101578276 2491055770130539434953961286764060389335782191770260506651012651520257 3312479528953632808812072561356446858770133086219553408984875992092303 8583403476413222517526467607236183635000289538317911202275332418710570 50357413990752711884506997770992796201299094760463/2730284316899806508 2559272177597850883076993843849956223341482633945475941910156658786193 6046612317477224285641087210791694363476942637322565836307551473076800 2601839997011470567700511821273880789643814902856924294822316897948192 5324901876481085419971712494667543164555025934824954938782616834553945 36983369500);\n dA3 := evalf( -7724448372255656663693431728448532 4330531869749672880287433539617352618142787547819716096621393090845061 7778450564770308350828036385893785839553641420591927956571027101449308 3590865955360585937500000000/74170081689167509221348947992029015136838 5368608703024323063377064486111666678836850507543864479070357388310041 0573121613919598093476523405653151433265564698570629097369567498814409 62739606342162087083627*SQRT7+1078708278332342035488059682328673245953 8536428257781166349070903295461867742604130984762274677556878576776246 0957783916855209611442287263104343529934980536382815330413076701980124 1123138551992187500000000/42327136843667774059401392124774452999143195 0957898943955793310670635307334593411405665583303112492031020847609896 6164890951108987179459597662211983344784666327148484889850926015140531 724520403767098469721);\n dB3 := evalf( 6201419407584788929817212 2196988636066734701079189570541001824095471401881520069265874477311177 3787674854795112725374989757738156296679126349125535783299800631393783 2950694057843013256716458564739584/60317726446078370171297062722539236 4832547249916451951209401087983060413461887925399980040180228058308390 7289507806481082522741157688753242484238768164722220021106454380855245 27893072367997523817675*SQRT7-6503703303106108388620354983134495953571 8512065696303115079052439803956395285654926750315449041173183302346467 1707104222118788339034437104679402691539426989749680912778905720091042 83582118584664786432/2585045419117644435912731259537395849282345356784 7940766117189484988303434080911088570573150581202498931031240747742061 7822403192472375138963610232921345238000904562330608081940525602443427 510207575);\n dC3 := evalf( -227921697502240418655397058767701742 2799966683311164552183323957889040302343398777384143046300980689475425 0461144718957555025178948733586493281247511106903104903898318379366926 5579349426735797892508/12113177546321243107434724486456067970213692384 5287960631867015991960004963169763226308044193661854271558877131709195 1512641550293522883169019691671723775850655783796304371864906002277450 5785640531+31046883651767586971452611316145927861616281920152730571434 8285958608910442418925256852969007179892992862191038442819491744764548 0119551295159037447652306983896752840953341364520243181647582354028/40 3772584877374770247824149548535599007123079484293202106223386639866683 2105658774210268139788728475718629237723639838375471834311742943896732 305572412586168852612654347906216353340924835261880177*SQRT7);\n \+ dE3 := evalf( -7409315673141615405894240896642264359673789642148606399 1865271963223686527881613358814417338252905071805335307382670863930935 095473404124817935961598492305875689077069252895083233659/183892593501 4346394987345221924421360125747291332046759635259294829877852134951653 0265807969549071635056700927646315252116900976167083547681958520629418 572730104296758610048971802188+221944047274554281114516641353862695657 8422296007823035525733551643148278202456477750556387646383212748343901 81206106567928388186009626582677764817094615599069709104725681719/1571 4277590215860788173647299337695226151553360641273965967086490029687013 8008502375573269249561081738357087951426102510069429108381640640774907 6258027599512821050900980515474*SQRT7);\n dF3 := evalf( -16846988 3249037129740938459634539060829566737528220970969573934352212371759352 7125282238496336582314191416001396102438174956981443032517909564393462 369254676751913588274792144/542739648629583400452215854840887123256437 0729938010447554002349374792246590659177282109646147491181770868475351 6538254453174681215161101863162900037505459135201611047642173*SQRT7-33 4859661515030185208241924652720029948244668800169265832204335385194442 7700058471845410136769291463534778987351287243959420888225687780614576 6352415378828057086017985588602540/16282189458887502013566475645226613 6976931121898140313426620070481243767397719775318463289384424735453126 054260549614763359524043645483305589488700112516377405604833142926519) ;\n dG3 := evalf( 23677930136204317297279607732517517072910089423 6355094765642667130268945011010076303562827016641624317527849036646259 658859940304432992625045062243949507433328202500000000000000000/251396 4022011689982190214370557935367289113672806475397073183272672237796629 4082301846539857514666404060643101512467723309094453255883494426237207 33859470922091523601325557937563+1287030007906230823207999760849727409 7480976944246107084165461829066672520654735302383184863880849526119906 883899839684080573902022689963512309618567057406782000000000000000000/ 1145783702662453845399122360219650593541367154098024427816956051534678 3631691391596484453697422481383738500114631269187051225766034311788171 1121677856955969285425623322800143*SQRT7);\n dH3 := evalf( -11135 1502103436717657002261076564836329383274151402454743217321692884922586 0475297021360535714902130370495573197766239193495140841128363028984149 723357812000000000000000000/392436829812393472017128160768159144369958 9597081174362575269226478054597404447450850990992287140707341461505452 018439792428044136487392571525298973454595421088304310432711*SQRT7-331 7272965301106665220220615516306512808530938761166387815105341830245654 5352601283727929646994988184054062244049617062294435545053862203092325 19461117478345000000000000000000/1862517652601676954493989207455231494 7082179198845573562063579344713306740062377584197560423711985261826936 351272277992030729923758884609188667688778776571919133380774910803);\n dI3 := evalf( -5753093544495241237352913914699886705020818722681 5241729144617958324571165111143241715244278188173778919508350413166340 853010119405436607820310527672593340112285249419689794921875/142791579 6134076236324944695162188610046743323319850361899822216928457180409371 8668591653129603944521725938888735960621627480353976183934635841257437 435724521446206395588744068-135964801887944073298204124665145333035304 4653426974270958159193790637617219234345592474735217004932370504139948 1075510874756845899055299084435456263574752617215215971044921875/17413 6072699277589795724962824657147566676015039006141695100270357128924440 1673008364835747512676161186090108382434222149692726094656577394614787 49237021030749343980434009074*SQRT7);\n dJ3 := evalf( 33961434743 7677125453512522293510502870340181297258841034953570254364712585869778 9564645037171714603802717265717287182707583927387620008572261506187293 5387869992111331312920000000/82984911246219526486208741808758587299549 8059964636255127020463437917952015171671981461185427103829942667370330 04817418283844401851645301409570232928693213645772926029833616633-1940 6211773231403507483901202405702799356333639670869479603881333756688247 9214282720445961080435413902212198105351849000243666037221160008952161 683593562296429403369024360000000/202402222551754942649289614167703871 4623165999913746963724440154726629151256516273125515086407570316933335 049585483351665459619557357202473404152022651053991360315269020332113* SQRT7);\n dK3 := evalf( 51942289814862881052822633203783142923380 0404679626171240362609108086118341970260571563882531553623228606767881 523164655254969272519138708657074963619193064488862326391700000000000/ 1374299972958233226512986026977049000940215600700828696784259129654404 3413373351160687560403704131092235948432964603197097229592719824430705 7326943083758055765401808546472016829+18332826096684769668820847127875 6304428601472155868878755315145073669921319036176848690396512410992711 8850851990313923186634995478500148327448394049750553172935996283000000 00000/1549130404300745988017858645545787923765138358277906743557135894 9405523976427287942804013337508682390604128668398103442782706465223634 62398391769084680042496550422962681649143*SQRT7);\n dL3 := evalf( -12743811139820301234400748486594454902559783784537304923899207984636 4357151230840222975681661832346119718741931864506470550653987811663016 85357431064813824476101675891500000000000/5412152173223037025303915742 2377801160090077368899248038513417528784930539858429184874711144815011 8958685792808972817992246825000659350431350351669490593832246715009906 636149743*SQRT7+312551656500323381625001726275572916448073513461755871 9626383079600148342639637903937330866210949248894730381014678219999821 265258984261319378164481894313761535865726516500000000000/136927449982 5428367401890682786158369350278957433150975374389463478258742658418258 3773301919638198009654750558067012295203844672516681565913163897238112 0239558418897506378945884979);\n d14 := evalf( -10731986929535723 2240457353635182806414469709424336015147818766927187914139751039112631 5196690306266624347482759834034984620460069574349220182260379900618375 977996563418380643030265317784506450733258888051173400983/573193863267 7386491883281868113270212432394755237327717820088182320183723557431970 8513645903201975813915774306664013021876400929018684337510269783667464 29827294972347473891044136265978119080162318450988304208400-2042268363 3023850427157622774930483424289335990516094409152456329289337264494868 4674182371148751285724518255378710385857817128665976947770243514887931 45716766453670386276645275697503178575536332339048521881/5887703722356 0378286788084237725980668900375897107143773882723146772860020270598666 8436618203203715640133104478729395095408126689894697491949719618912594 58507216647090156079685522852363314654112381679598500*SQRT7);\n d 64 := evalf( -13311983448035372881916241250511713225153949175466529116 4793925553571846242782463784481894183249822863383363960835587403651974 7869495666313979566421588611813008702831919624365192319698781920042794 26031250000000/1316797195608147729384679214376460835139333485237692280 5486875126885288245272935136091139587832361112630247307164791906265979 6609435251825063024613326223353924331236954866905164073687991630013504 6774902225727+11487188486374812468826956712343059177526006565850520480 0195443945040047202829944122473302936075645593294142313889561842835358 2187955243099435831241117841409545966154352637567548609167765645096325 000000000/400363999880859753537451874240334702079456821294524864867341 9010910698767185446985737652656683600216670795775969836395945874022786 1128557331415206240870584957230537231640895458824471873405294467825323 8743*SQRT7);\n d74 := evalf( -81451353260801293301772812494412539 1058631289943528414937364551570209606156281327310089953342010709967262 0953592324561296782789927122421321164907601342592901376859005159076449 960835948828471542688037109375000000/114901270155449147582450886977239 4717672342043304375147058050767706462176004345261179695629670169565283 8557003737602603252837001000072543570736842235169575598867055943002216 9238376938768008971431575901596937823+56383145321951435263396320785820 2865236431147921676538261169633904971857171628115252919577324463461656 8641667406454895310709453269055815232978168919012966039388478195666038 380485672845922962743710937500000000/280247000379144262396221675554242 6140664248886108232065995245774893810185376451856535842999195535525082 5748789603908788421553660975786691635943517646755062436261112056102968 10692120457756316376379900038949703*SQRT7);\n d84 := evalf( 76197 2305785035030625587924638152775137980809504891541708157485278408283024 1783315030879264478159087341373324005819709357764333095900213276527270 33434877012718359216745245731042562384675245387343750000000000/1035425 7912484883652793854882857609355108275630425351076562134550352101858968 0214589886575321625950521016286967806456595370459427341150364627527906 043718556790995621133471335274825151826081739080600475804133*SQRT7-617 4931884767616771139673101759950361758511895533787112941146631627051231 6891734302069337130258803641540916405656732593713426258509170897808891 9286424674207308140825686955206460909062557298294557226562500000000/23 8147931987152324014258662305725015167490339499783074760929094658098342 7562644935567391232397396861983374600259548501693520566828846458386433 141839005526806192899286069840711320978491999879998853810943495059);\n d94 := evalf( 52605072049407933572199393423607544316260040933917 6951387605689663643086466990257398991762520085050344401854792200828978 8457454356524503438730129757690017457976623551789367835585865762267104 5350985233290105806829271771357812807195571690302268192765084605752691 0944387162969121972577790446419963115724357251439/14146550864765836830 3415918018641714420088051004403918255655350434950652548757288387493231 1122343613871628423010814563687535562056697602707595006774878098843524 6641658015603474444044102700900936733905776698740540387680398434964728 1476175525808732745967422252163436085777336449870232843433247847429768 75561500*SQRT7-1173340119983190959030009279065369798771113295109786420 2499550967522010653111324195726386833301181644567628594133474181679789 9023302906516310460079273551963763335939562573544282078657485390389399 8576085441865178942189599405804520032845415625606189580010143436825435 76114197254642765922254255599140924397199239762843/8955332559431365347 0794412742520950896492539807827856412560063039341161089465313840818715 0232888401325295656902766051396757512204371850418015943088768831691904 8534035190197623462057678773778328990031712881370711687017199425270071 5065678154857960177507216982509541579740485066225852199206983217336940 813054519600);\n dA4 := evalf( 8734512411291076360839095784192206 5995440678065782333683331968466745962169122408891973274504196531517956 0382886474873564422021177275904707736242136496378510900531040207940810 50620988070942929687500000000/2225102450675025276640468439760870454105 1561058261090729691901311934583350000365105515226315934372110721649301 2317193648417587942804295702169594542997966940957118872921087024964432 2888218819026486261250881*SQRT7-77861781398857398129226883156240548751 7154808963170159789131827424048866406819255714524591593278693830505558 0815340366191330240036268152415408528839610118966487907156620880589964 44608526630785302734375000000/5629509200207813949900385152595002248886 0449477400559546120510319194495875500923716953522579313961440125772732 1162499930496497495294868126489074193784856360621510748490350173160013 690719361213701024096472893);\n dB4 := evalf( -701232918815577324 8339421235516042287845604130459775441098314161082729272251927814089067 6734647904956582352527296610116648803918028041189901392583594606908039 164127922415037596021941430543429479492096/180953179338235110513891188 1676177094497641749749355853628203263949181240385663776199940120540684 1749251721868523419443247568223473066259727452716304494166660063319363 14256573583679217103992571453025*SQRT7+4941484522603876991786994281706 3844114222634607422873897739716610901530377275145637095191901568657205 0607180291659851994194583665347551917484872408481381425605407561570707 811475627614484013429472155776/361906358676470221027782376335235418899 5283499498711707256406527898362480771327552399880241081368349850344373 7046838886495136446946132519454905432608988333320126638726285131471673 5843420798514290605);\n dC4 := evalf( 123695629143105383217938741 1142129236957224830848635340686171367778483680207165477655989009241241 5205069696117428510576074643452133943260106876808416628610097420360828 89083245870235083836604868227335/1211317754632124310743472448645606797 0213692384528796063186701599196000496316976322630804419366185427155887 7131709195151264155029352288316901969167172377585065578379630437186490 60022774505785640531-1818996638880040666603585167128203893740279287991 5200134411661335189886216852881111150635317367758164569225154224480535 8536055878749167427891083974139574479737665372090420867172687703148146 583324/627625779602136948571747382717930982912626548421181143170295419 6474611656122785659394199181018748925987506587135191458614723058515662 6070933662780918330354956258227787791288337098563598475573267*SQRT7); \n dE4 := evalf( 270887727159796494729503470767794201560988403522 6362629375448508995659323584232680037425238698820564082921469252895614 18129220483484466040918005644577778105178437181636879572005256229/1225 9506233428975966582301479496142400838315275546978397568395298865852347 5663443535105386463660477567044672850975435014112673174447223651213056 80419612381820069531172406699314534792-2509658867673517615384097351295 5328980398141733009354179351200723218035757723408053204879004330651984 7689255868914056850390989760115356298169187189433724069073863963309321 1411/47142832770647582364520941898013085678454660081923821897901259470 0890610414025507126719807748683245215071263854278307530208287325144921 9223247228774082798538463152702941546422*SQRT7);\n dF4 := evalf( \+ 1904993360370887322388728403966575660445006016752873876626630555747220 8879699004059783442595254896032149534199634572250015888955349322389063 621488969805503301867145683882590736/162821894588875020135664756452266 1369769311218981403134266200704812437673977197753184632893844247354531 2605426054961476335952404364548330558948870011251637740560483314292651 9*SQRT7+37864656847847677335611431653351139034957484199265280271873248 9839206456482328210768112388868624023612104394367052953655510131429332 933388622776419117049464589187879810909223260/488465683766625060406994 2693567984109307933656944209402798602114437313021931593259553898681532 7420635937816278164884429007857213093644991676846610033754913221681449 9428779557);\n dG4 := evalf( -29451513059535547840374247022474554 2298141149999179107938281043199542455652667829870217293512223723735657 4153369909524359582381971657782914739484591054891041785369750000000000 0000000/82960812726385769412277074228411867120540751202613688103415047 9981838472887704715960935815297983991334001222349911434869200116957444 15531606582784217362540429020278843743411939579-4851081931036029297443 8911538271483606827226542272391969205095356366686427798317951780919245 5516111534560449379876982530298885009233909769453925622387849287860000 00000000000000/1145783702662453845399122360219650593541367154098024427 8169560515346783631691391596484453697422481383738500114631269187051225 7660343117881711121677856955969285425623322800143*SQRT7);\n dH4 : = evalf( 1259120431993201434075508806044593430558681639376050322118894 0471637967016420709085994910201911516928304710316408525326374457361475 255438011367722947343428000000000000000000/117731048943718041605138448 2304477433109876879124352308772580767943416379221334235255297297686142 2122024384516356055319377284132409462177714575896920363786263264912931 298133*SQRT7+375104609296544448864403304198232784109446020448296300535 9553925946642061754851323103084866328669687125294120875472830853415022 2782796641118108861771473069805000000000000000000/55875529578050308634 8196762236569448412465375965367206861907380341399202201871327525926812 7113595578548080905381683397609218977127665382756600306633632971575740 0142324732409);\n dI4 := evalf( 166738555654391352884029940792111 2340336272689191283266409720302093925668696731991918171783077342903624 3938437147173603470411934802348686466775666667725733709028056899427150 87890625/8567494776804457417949668170973131660280459939919102171398933 3015707430824562312011549918777623667130355633332415763729764882123857 103607815047544624614347128677238373532464408+630349688244853273594724 8505055716832829894700024396691495067913460230906946552043847115662406 2918231338646321843535340229801970646836270786941983659878899926972204 01539208984375/2141873694201114354487417042743282915070114984979775542 8497333253926857706140578002887479694405916782588908333103940932441220 530964275901953761886156153586782169309593383116102*SQRT7);\n dJ4 := evalf( -5487987805852624113464564512143471420277871966941237853564 0608679711449630423611208965801100671844204471050363807252584050887895 5299820331215807233470344103742027699430927400000000/24895473373865857 9458626225426275761898649417989390876538106139031375385604551501594438 3556281311489828002110990144522548515332055549359042287106987860796409 37318778089500849899+2998986838606373021572786726916187336510234123185 9609423745227247030053846454696092877297720352497475176756134589000441 523387716850292028430452890144606911351509536264275480000000/829849112 4621952648620874180875858729954980599646362551270204634379179520151716 7198146118542710382994266737033004817418283844401851645301409570232928 693213645772926029833616633*SQRT7);\n dK4 := evalf( -245883863714 6645350990832528163030204798085820989240675537367896325296619241531389 2855681946046653931781592591948176658826634921160699445044199722537212 49655310923386370500000000000/1374299972958233226512986026977049000940 2156007008286967842591296544043413373351160687560403704131092235948432 9646031970972295927198244307057326943083758055765401808546472016829-20 7300624405331037830914567996877696267136069197885838071035189376556522 7568397188210163228428045236366655874371346264658391396881982174059826 160162372226497168355312700000000000/464739121290223796405357593663736 3771295415074833720230671407684821657192928186382841204001252604717181 2386005194310328348119395670903871951753072540401274896512688880449474 29*SQRT7);\n dL4 := evalf( 14410216911761868350626070312949309380 7426796164894288661805784330635243658207458406092705317615366517617416 8762872333246983717734978797474114483971783477600868763413135000000000 00/1623645651966911107591174722671334034802702321066977441155402525863 5479161957528755462413343444503568760573784269184539767404750019780512 94051055008471781496740145029719908449229*SQRT7-6896568642356114133355 0966169797516541847427551884031503659597225600806660614106336735258779 3926901776026889135918428556771935592286511139770280733046562738986063 1164567500000000000/41078234994762851022056720483584751080508368722994 5292612316839043477622797525477513199057589145940289642516742010368856 115340175500446977394916917143360718675256692519136837654937);\n \+ d15 := evalf( 18618942326425218780559180305793668582672458034159173852 4880718651079064168399604420775429523827299703930176684262317822267320 3563411059669653921486471141408599914029352539275973324669291735051224 016973334755719/540748927611074197347479421520119831361546675022389407 3415177530490739361846633934765438292754903378671299462892831417158151 0310394985224066292248742890847427311059881829160793738358284142265682 24953762551140+1591792027711941113089445119699259930044156499827497550 2128080986553209464172881065141724653530536528096163885530557520149300 4910548685181813603197238788110399973703221545494191009211994564051951 062497377/222177498956831616176558808444248983656227833573989221788236 6911198975849821532025163911766804542323170313601806526019227955195056 2064056299989419581607342832911942298172105541706736740873454382030822 4900*SQRT7);\n d65 := evalf( 645434243920767169989079285415429938 1654579454704470304399183098657681487273042254624466031077774467652307 2236208562981373236697165785209258651846732564043564298996011621853361 9119426138672227111875000000000/22586572823467371001452473659973599230 5202999183137612444028732879679043658197858251992102707244615997088290 0028266193184559118515184422385300593710569868849473949175898231649469 531526443053404882975818569-104109128609966728900592411882038780112117 1111011075477030256753985903165064647546702779722321476057182020792981 2204733137994924958773126878320591853500194966627525291325262045604131 35743475875000000000/1756752961302587773310451400791288732248603867022 9261292994379161521275854258214066422346014408074667269836665071682299 0165599946735974363016301914176702873879905823745681858090497902033371 191170800017*SQRT7);\n d75 := evalf( 4344104099495706682385149564 7637171162868601605117155409763079627026434833210925513701544458275120 5367076459799087936179495510931023498939233008718887181607710162426099 392019812306482425636918401367187500000000/216794849349904052042360164 1079990033344041591140330466147265599446155049064802379584331376736168 9911016145290070948308024220756603910459567428004217301086035598218760 38154136573149788075640970407092482961091-2197317522846957085075100687 3991462199145165685344791402460748504503977885882821552970182459889880 9166044069110646651494721293266345488009898153286989234301352095439044 865967419372999349017316992187500000000/528767925243668419615512595385 3634227668394124732513332066501462063792802597078974595930187161387783 1746695829441337336644440869765635267237629278578783136672190777464345 222843247555806722950497733962999051*SQRT7);\n d85 := evalf( -690 5804050686552467086417940517742814418709767145760327482035027688165182 8916176037648002559479165495630340944609071553335328081740980533700778 4102684030880654352296545341750833001008755391406250000000000/45433338 7998459133514429788629118444717344257587773193355073916206761819173673 6050455751440176654257174913864317966502648989005148799928241664234578 4869923997804133889193214249594186847776103150768089427*SQRT7+32933212 0840712267056483962412075534068506874099862375993252048533957866826016 8650021543529837539226316715976990165379967315767044847784679501294930 9016024216760804228676002318340975460762545582031250000000000/44933572 0730476083045771060954198141825453470754307688228168103128487439162763 1953900738174334711060345989811810468871119850126092163129031005927998 1236354833828288416412088892848650792450566016109640443303);\n d9 5 := evalf( -255268220240337377024905289227003371411829926883472074593 9636597531444590834500689349063432277491001726230486656953767127452980 2890840412642129204474032404479049029573407137447831363376037677191408 2902945908821586637824995946184057559872863212580264560922397811316925 42949664031366026904196275388422702698489/3323535382714311026483173728 2529337654384654709494773248133271617705996277431718391705652592405638 1591265107292863311980151385851421347927651657099880064609616871800364 8218466911382242022244529263108721732023036268803794154532188110152389 10299274740982501456695595429762945037430979169599718010394952767300*S QRT7+31289299816794844874794332540115451172812722081142823586432983227 2574623223393550460341343344405722040893201357885539325589052891118422 6914166603824464609725414769195482612153852240645374816550710136367936 6445943546945589860809703715503160970202491462933199847787015383656059 8650035286434055555392760363254630699/84484269428597786293202276172189 5763174457922715357135967547764522086425372314281517157688898951322004 9959027384585390535448228343130664320905123478951242376460881165273771 3428887336592205455933868223706428025581952992447408208221760073730998 075639157751870292020358245740628514954904912248318242396993447660);\n dA5 := evalf( -3403942271269844901774093644328276284793191754238 3519055083617723194535910878199782065466447491866684550862600506608796 3725766756354611160428436337088666652078250212139598915149938217128183 5937500000000/41983065107075948615857895089827744417078417091058661754 1356628527067610377365379349343892753478719070219798136447535185693562 1562345201927728198924489942282209790055114849527630797902299658540540 1155677*SQRT7+37751444180853702183557387361500795158867982403336616046 6702039740889880250740822287099992512839586664084136706440812709602969 1400984987680315497265249923759617326268694209137855205794501883789062 500000000/965610497462746818164731587066038121592803593094349220345120 2456122555038679403725034909533330010538615055357138293309270951929593 3939644337748575263268672490825171267641539135508351752892146432422658 0571);\n dB5 := evalf( 546557440636678960685462532051661481560428 3512620711401192061210365286971531197511094050930960595705804661002266 3750005798963997613261206585528204103568371452651878888121934118619795 3083059496172032/68284218618201928495807995534950079037646858481107768 0614416326018558958636099538188656649260635537707612145982015828047078 0461687949531972623666529997798739646535608733043673900676290958462533 785*SQRT7-527095556129177761504289114617072640500748518083744218972419 1752001862306199526441848970143297107501495938843090080607709652056822 250595814619925514648463467144509198448085385163413272824112344515072/ 1365684372364038569916159910699001580752937169622155361228832652037117 9172721990763773132985212710754152242919640316560941560923375899063945 24733305999559747929307121746608734780135258191692506757);\n dC5 \+ := evalf( -34964888134240260921644677947623662905454300574870927300495 3098826883823682651285693799519622710047619656072835453514234977904412 3730358166480306438588028368440895383388448264467272745678283019594300 /121131775463212431074347244864560679702136923845287960631867015991960 0049631697632263080441936618542715588771317091951512641550293522883169 0196916717237758506557837963043718649060022774505785640531+23390898326 5714898432966843055372495100597941363986094310492176106161204054319433 7318172217413057310500139786148237521390093654681075136436862968115511 987920640150312846277015707521991222585597860/390747662784556229272087 8866598731603294739478880256794576355354579354998811927846009936909472 9630410180282945712643597181985493339447844161925537797541156472767219 2356248988679355573371154375501*SQRT7);\n dE5 := evalf( -18259119 2738871011519503749552214782512342424722004361317525575240657023659130 2677818872791674445634451714455243551795090032109379409280341088192664 179719266901363238457449318355730/289139297958230565249582582063588264 1707149829138438301313300778034399138576968007903428926029728244505770 5861079112031630347446803590483776664340612293353349220592387751649326 733+978043593492172017587759878445316514184642754514971061703632792775 2160706739524109563409146662076313015373089513279149314668818474255063 6592169238825478448615720836682606935/88948741076693551631171588486817 1427895370944941958903733986027737529453611368881371169448582421217386 9269129326005802456760138210281545704240054290722261393326703213097257 4*SQRT7);\n dF5 := evalf( -74239832981087485875142661385892466502 9370129808193997252796775409839747106481973971434177968869628582154574 438810882979557054651543009491067925323392354537981907068177124560/307 2111218658019247842731253816342207111907960342270064653208877004599384 8626372701596847053665044425118123445386719766671608310121789302941412 96228538044856709525153640123*SQRT7-1475630235122241880478546271662039 5659779771473163630343740708051598670837841292237979045102166551353250 6755844917358318278072833450129059888436671592027320309169677752083971 00/9216333655974057743528193761449026621335723881026810193959626631013 7981545879118104790541160995133275354370336160159300014824930365367908 82423888685614134570128575460920369);\n dG5 := evalf( 11477601214 0774406390714574962772404378855632540565514593773291471892426264053173 1998738293337451954308752597875761223357992560726956449892908395364725 682100046787500000000000000000/156529835332803338513730328732852579472 7183984954975247234246188644978250731518332001765689241479228932077778 018700820507924748976309727011444958192780425291113590166863083244143+ 1890523714306117311887343102419797414018556184608140665747394606426825 9733850529739084176457890892224386498757952488382198330236238180977921 80552793030208810000000000000000000/2161856042759346878111551623055944 5161157870832038196751263321727069403078663003012234818297023549780638 67946156843242839853918119681469466247578827489735269536332515524531*S QRT7);\n dH5 := evalf( -49069404922256935553483620808165789820087 5900643233397983647080827965551624114922553421342042519931273555109355 136185097922792443777868813909344468667380000000000000000000/222134054 6107887577455442419442410251150711092687457186363359939515879960794970 2551986741465776268154762989653501991168636385155489551278706746975321 4411061571036093043361*SQRT7-14618268033852782484299027084009443969265 6136739741880887582998374260927252871114194107791127726695950807088303 4752779585284244416579154100284948468638368425000000000000000000/10542 5527505755299310980521176711216681597240748182491860737241573848906075 8247787784767571153508599726053001015411961813060184363710449576717038 987477919165233964949523253);\n dI5 := evalf( -945005650135989331 1008691025798865670627626836428838250056252718945277970490599756646751 3269056384117055448803425768668947919070952593192217463445627466954264 97527451541699218750/2020635560567089013667374568625738599122749985829 9769272167295522572507269943941512157999711703695077914064465192397106 0766231424191282093903414020341071573416691599937576567-24565469123665 3190707952192167312322011929518241881843175086938993704637830135733926 1993600227492523666546302983938643870356075889043933266863114516339053 12943126237326904296875/4041271121134178027334749137251477198245499971 6599538544334591045145014539887883024315999423407390155828128930384794 2121532462848382564187806828040682143146833383199875153134*SQRT7);\n \+ dJ5 := evalf( 2687471124180520035243797670093429451967007008322018 1506454617030025393570228301784288640763045579637595097651047041947160 103505614912328433788319025454496797983105140153560000000/469725912714 4501499219362743891995507521687131875299557322757340214629917067009464 0460067099647386600528341716795179670726704378406591680043152962035109 36621458844869613223583-1168740461999665987602301399811544888570082039 1048254846405899664623841059856406393372661909664799643009665768780854 51825344295000432533016947785909520261108426209188575800000000/1565753 0423815004997397875812973318358405623772917665191075857800715433056890 0315468200223665491288668427805722650598902422347928021972266810509873 4503645540486281623204407861*SQRT7);\n dK5 := evalf( 109865567899 6622641101984185729439510932732221380905651271091793243383298725406219 6980876084788401328206715494026195574850858035018121291643210681473131 9890886240485932700000000000/25930188169023268424773321263717905678117 2754849212961657407382953661196478742474729953969881210020608225442131 4076074924005583532042345416175980058184114259724562425405132393+80787 4927696893331089685652032609325021034775093660533661951043584166131312 4810513451768111636267717082879246795485824801118324847272792708474634 1140889074915222479500000000000/87686626658532791774595772389384222099 9134919779947213334227865060690036401544600536076226651434852298346905 75838321374241734708813026173493873721774342028106627714868772593*SQRT 7);\n dL5 := evalf( -56158311047454745726246106777102459698954820 2715159266900111817328542385189219320863949560181911033396280020293822 7635827909801505070897381391356149883890966327366147500000000000/30634 8236220171907092674475975723402792962702088108951161396702993122248338 8212972728757234612170484671806374390412177314604669815052926969907650 9593807198051700849617356763193*SQRT7-99528365668738122190577319183099 8035766843198640240459547979561919926848530637102633953858170241551732 8804160875551249085285694771432551057619613242005967389705380333155000 00000000/7750610376370349249444664242185802090661956362829156464383336 5857259928829721788210037558035687913262196701272077428086059498146320 83905233866356927233221107080314953191261087829);\n d16 := evalf( -28626966286919337643718817586207110583722701516737774592265342032621 5635836774450559841081057862388905637085141370221743181856151121661928 7903738800485991779094615468146450009687192283475764245285243721590881 25/7745863017131603367409840362315230016800533453023415834892011057189 4374642667999606099521490813480829615911225221639218751893147322546402 0409051130641409436120942209118093384342738645691767589502493376797866 -654516382078118051420227381034347724264021979050932217716479554286305 6273371746675189804630604242516803871666285704807928335979772564548091 4679310717147509874424883271471576068769085746907588725505082125/78502 7162980805043823841123169679742252005011961428583651769641956971466936 9413155579154909376049541868441393049725267938775022531929299892662928 2521679278009622196120208106247363803151086205483175572798*SQRT7);\n \+ d66 := evalf( -576391972867850980033755071752811902594795813916311 5888851159429971852832210493572076246180249048530435038828882958757977 5119759326541334860634250189238888463855944227309362705284162579781923 1902343750000000000/13167971956081477293846792143764608351393334852376 9228054868751268852882452729351360911395878323611126302473071647919062 6597966094352518250630246133262233539243312369548669051640736879916300 135046774902225727+318466404318402623901950469683002360992243745321147 4827306097875591818798757746063362504464816747768968217786195840018820 6094366529758046816623068216850856152211703834153465322808166200539062 50000000000/4617808533804610767444658295736271073580816854608129929265 7658718693180705714498105393917608807384275326364198037328672962791496 9563189819278145400702082871479014270261140662731539467974686210701560 829*SQRT7);\n d76 := evalf( -352674012719556481954188337104313731 7337324470986977461137942478635187494841924316004071866845785890843292 3900832309033965168037920644204748146876231589926398612055813621533788 093534943466557305908203125000000000/114901270155449147582450886977239 4717672342043304375147058050767706462176004345261179695629670169565283 8557003737602603252837001000072543570736842235169575598867055943002216 9238376938768008971431575901596937823+46894340358762224498936365329445 7785663944031911313034866758069304759534845082503367352418821865030862 9646903778908681653068438610586020566750121533828138867236857952598636 0645840164416431884765625000000000/96971280408008395292810268357869416 6319809303151637393077939714496128091825761888074686158891188763004351 1691904466708796385349818611311984755542438323551016007305209724210417 619793971475143170864706017127*SQRT7);\n d86 := evalf( -267366706 4926436610273066503437926406365832074994322480099094684677366778428823 1840906391375764389909015902572131555375928064235545643840068818063292 87287408529397655758675310797196701511153979492187500000000000/2381479 3198715232401425866230572501516749033949978307476092909465809834275626 4493556739123239739686198337460025954850169352056682884645838643314183 9005526806192899286069840711320978491999879998853810943495059+61050174 1332977736212446658364487960197270661946251417907049484679303362940719 0118376256288171944488873772525282586507174756158846143727895217598664 21410113198348573858084410510734447804018554687500000000000/3451419304 1616278842646182942858697850360918768084503588540448501173672863226738 1966288584405419835070054289892688188651234864757803834548758426353479 06185596998540377823778424941717275360579693533491934711*SQRT7);\n \+ d96 := evalf( -25402068340985039363328180147673769937534721913948069 7321786457546286635728105002989468530690916886165489028641534850170488 1242340960510789532481050665381568482682099801262280635082280181262510 6304782144252311617536840890866333805129706252646214583490342179739996 19713115066536482298254569312248541547393720098125/4477666279715682673 5397206371260475448246269903913928206280031519670580544732656920409357 5116444200662647828451383025698378756102185925209007971544384415845952 4267017595098811731028839386889164495015856440685355843508599712635035 7532839077428980088753608491254770789870242533112926099603491608668470 4065272598+97614401271118021299253774121973646636963568163080822565591 7416704791169100107506338817941113059289230105524245328296527658813914 5169735267206931978395363546696865162435232229099458973646677181301982 5278323406699439715759677574398046508737822353551573467647851137136152 7268291405856853719540114277336105844625/10921137267599226033023708871 0391403532307975375399824893365930535781903767640626635144774418644926 9908897142564348843166777453907770549290263345230205892307201040735998 8045882270802047285095523158575259611427697179289267591792770129960750 592434167988684997867017265822010373929981975513046733821578147933478* SQRT7);\n dA6 := evalf( -3371316225465720273927498110222929155636 6952071811377690223240380623992938167485846492440852421652543514779901 6063366360168211040983382633380678960694497276186841057902341307185581 5200906475830078125000000000/56295092002078139499003851525950022488860 4494774005595461205103191944958755009237169535225793139614401257727321 1624999304964974952948681264890741937848563606215107484903501731600136 90719361213701024096472893+6998200585904333799124126398674738345485536 8319491335917911556250307629736574832938279884189608870427869580212341 4278731275709185747449068263297003219708346095587192317457131876484268 59130859375000000000/7417008168916750922134894799202901513683853686087 0302432306337706448611166667883685050754386447907035738831004105731216 1391959809347652340565315143326556469857062909736956749881440962739606 342162087083627*SQRT7);\n dB6 := evalf( 4279200051589533854412734 0914890460757834909494585919036576523155766528679084232528429254600172 6940427824314166123413976863821077801219074892375810890866695336336981 327122666332217926095657068105600000/723812717352940442055564752670470 8377990566998997423414512813055796724961542655104799760482162736699700 6887474093677772990272893892265038909810865217976666640253277452570262 943347168684159702858121-777628491113482125469489032991326002206085576 1936134954754033396041820223644561057153237906669636089363626838478081 4875245402145556110177419125359907128938652624779639509186362655753946 06149760000/8348474248592161961425198992738994668962591694345355726081 6759582430507053548501785464365422868935406005637225021542990761560431 248287242110508495061103421730395937084856127962338141504221110563*SQR T7);\n dC6 := evalf( 53558636092990958385037880863476653950025960 7312695019344405636747645322581744457368483801671828721608298887633435 3630497635816196164528837126981800767954816913863837267989226370324654 333243458125000/121131775463212431074347244864560679702136923845287960 6318670159919600049631697632263080441936618542715588771317091951512641 5502935228831690196916717237758506557837963043718649060022774505785640 531-281278751428636684213980297479682156702323301839537678205869570934 4975356990633463048258553671495190942694640448368961238716738727641629 3057301392468547695909456380607416895932885534480685593875000/40377258 4877374770247824149548535599007123079484293202106223386639866683210565 8774210268139788728475718629237723639838375471834311742943896732305572 412586168852612654347906216353340924835261880177*SQRT7);\n dE6 := evalf( 45069316985530236441270005371089438697396984831674633259813621 4540091925050033183096478724990415076852886315877206759351157292551070 919759991565130198122373795567960090465300028875000/459731483753586598 7468363054811053400314368228330116899088148237074694630337379132566451 9923872679087641752319115788130292252440417708869204896301573546431825 26074189652512242950547-1005385036460023771096099583796114111246779498 4735845674075920634050216212918617334985480800044977093805558991376201 57233964419471207149876575254517428868781555929098297921875/7857138795 1079303940868236496688476130757766803206369829835432450148435069004251 1877866346247805408691785439757130512550347145541908203203874538129013 799756410525450490257737*SQRT7);\n dF6 := evalf( 1526304505957057 0456510430508931214778454244075166942442578225675595730713898570104715 2587742397527332789348561359230447797076859112893194095831285560443556 41379969456268500000/5427396486295834004522158548408871232564370729938 0104475540023493747922465906591772821096461474911817708684753516538254 453174681215161101863162900037505459135201611047642173*SQRT7+303376366 3729295165024301723603916086789035211967325008424091040395634195370804 9374318958883158566625477599295724932505631436395763894937705504483483 7484611869908443582131875000/16282189458887502013566475645226613697693 1121898140313426620070481243767397719775318463289384424735453126054260 549614763359524043645483305589488700112516377405604833142926519);\n \+ dG6 := evalf( -6377546111204267478095992869897235644807163152708299 5424256538507674381748064614954411749151074416115605285780525100577154 9417984042041273984749858768943195234375000000000000000000/74739470924 6718643353847515571278082167033794618141334265000432416070696295229473 8386809146828684606612623624773976890713514567184181579424016467046609 23787648831340934625332789-1166024254593560514516549265680449337097549 6323276008624928338231158673452181667164848442260100264355327781600023 2440111893169499652267292348433238478260187500000000000000000000/11457 8370266245384539912236021965059354136715409802442781695605153467836316 9139159648445369742248138373850011463126918705122576603431178817111216 77856955969285425623322800143*SQRT7);\n dH6 := evalf( 10088230378 5020010972209609573582286371468665009422800288267473842910865294584922 1390216006138864262773099586744823185185763158913989611909134801544112 5000000000000000000000/39243682981239347201712816076815914436995895970 8117436257526922647805459740444745085099099228714070734146150545201843 9792428044136487392571525298973454595421088304310432711*SQRT7+30053850 4377312507406695600739623196827657926193074217021854562879411867016068 6117573558827160516828099986333966349993383558451608385205515823391061 6940156250000000000000000000/18625176526016769544939892074552314947082 1791988455735620635793447133067400623775841975604237119852618269363512 72277992030729923758884609188667688778776571919133380774910803);\n \+ dI6 := evalf( 707350784098528543645874268681473319911926288336350525 0326550850932853472036740824325920616730549914464938807030091899192433 5549962993901571104573150967021206128844753125000000000/11899298301117 3019693745391263515717503895276943320863491651851410704765034114322238 2637760800328710143828240727996718468956696164681994552986771453119643 710120517199632395339+252522026982139000223901530536506272571785798574 3466426820429589091152290213398162037837236754397872648923641791092361 983371604036827696363027171444257496841945550789642333984375/356978949 0335190590812361737905471525116858308299625904749555542321142951023429 6671479132824009861304314847221839901554068700884940459836589603143593 58931130361551598897186017*SQRT7);\n dJ6 := evalf( -6364706175429 9807406699760496320346940079789499073842749596146252961052283004534605 2951825282784510128668297505391454119656215199290824990188368764836167 115253352872951375000000000/829849112462195264862087418087585872995498 0599646362551270204634379179520151716719814611854271038299426673703300 4817418283844401851645301409570232928693213645772926029833616633+72084 7728967355393000055791611310557210473286127036794743891002371771726299 7913665665153586985690214191838508699542394950548904487963608513462997 8089240223187404672896250000000000/82984911246219526486208741808758587 2995498059964636255127020463437917952015171671981461185427103829942667 3703300481741828384440185164530140957023292869321364577292602983361663 3*SQRT7);\n dK6 := evalf( -73236968120301410011116941354119383743 9751870707544277294065478365551760929015675090859857703931128546619941 9958023337500078382693727183197148531900676885138588206813612500000000 000/137429997295823322651298602697704900094021560070082869678425912965 4404341337335116068756040370413109223594843296460319709722959271982443 07057326943083758055765401808546472016829-1660918529689609362178525798 1632537936780010763202170937732520050010705943704255485698989527903490 4429710070465212253658285770154951528169662103113964749241028974687500 0000000000/15491304043007459880178586455457879237651383582779067435571 3589494055239764272879428040133375086823906041286683981034427827064652 2363462398391769084680042496550422962681649143*SQRT7);\n dL6 := e valf( 1154564601734810930727689013407879869053683565449045760736093932 2304463022550670049767515258876854770942765152254709890547270535516542 8476759706404163551833152409671875000000000000/54121521732230370253039 1574223778011600900773688992480385134175287849305398584291848747111448 1501189586857928089728179922468250006593504313503516694905938322467150 09906636149743*SQRT7+4868602636202291526757747029856968706774129840684 2913745864373812883689652262974815857061989476068758176958770689679991 570488498858116386624785481980488124467838457261187500000000000/136927 4499825428367401890682786158369350278957433150975374389463478258742658 4182583773301919638198009654750558067012295203844672516681565913163897 2381120239558418897506378945884979);\n d17 := evalf( 213864523313 6092692363881075481108654677964950785911973931496478751705813424631522 6904186347479089390769707823305333368204385665786226208185412151254104 618078207574705565280033580285211870818860445969649121500000/100308926 0718542636079574326919822287175669082166532350618515431906032151622550 5948989888033060345767435260503666202278828370162578269759064297212141 8062521977662016080793093272384654617083902840572892295323647+60270147 3483401809999096603643386551820886295851445306611895813494076707579628 4828548329528505544728928005092787344333599326751853176278662276950619 9959295723217793731077269754253924685485424694001700000/11775407444712 0756573576168475451961337800751794214287547765446293545720040541197333 6873236406407431280266208957458790190816253379789394983899439237825189 17014433294180312159371045704726629308224763359197*SQRT7);\n d67 \+ := evalf( 314127877107780174924271034381446919106192807290445864303502 2793649214067955746406987610689849285620517519586512076726513781878130 1196776360512345365781807754829369347947916299163180731642743312500000 00000000000/9217580369257034105692754500635225845975334396663845963840 8125888197017716910545952637977114826527788411731150153543343861857626 6046762775441172293283563477470318658684068336148515815941410094532742 4315580089-21455868743750210097289716805490227967590437828749291413269 8009035827331449454602904110437616829765597836200424200964809031593527 9203293773932703632090873952173525749247460524386128237375000000000000 0000/50678987326691108042715427119029709123981876113230995552828088745 7050476858917339966791475529569647679847566578460303284287850985583905 7890052557752008934804712726231853277906180312895367758793395610617*SQ RT7);\n d77 := evalf( 1922038198683868334672182782967431823586040 8990535347252430827211256005902501010961613668494773639249939479345077 1579281083877971329673181533145924250604053273978846172233700316057176 025688193359375000000000000000/804308891088144033077156208840676302370 6394303130626029406355373945235232030416828257869407691186956986989902 6163218222769859007000507804995157895646187029192069391601015518466863 8571376062800021031311178564761-28688692078188660358722690037549723201 9448964850355002175861560004425620091700068695140071653290139523209045 1495954730486076677828311895888685922606486056769018647923562573701612 36415599609375000000000000000/9663689668246353875731781915663538416083 6168486490760896387785341165868461256960570201482730880535347674995826 2203751324881160723302989366756673022301898704698659036417343727824869 12336424702633789656515507*SQRT7);\n d87 := evalf( 14571218870719 5654658277641040973823375792830877207544992872658878543290765532821346 1303516369672288459858091575866456098036860882974174123460935776287515 5467319266274729690976555105857046601562500000000000000000/16670355239 1006626809981063614007510617243237649848152332650366260668839929385145 4897173862678177803388362220181683951185464396780192520870503199287303 8687643350295002488884979246849443999159991976676604465413-11243425195 7853237806419600252196354524157079274208265400744426644403703959589103 0163391910892332466110085515698466363383969673238138257409918211216261 408618335294570354713408434839785179687500000000000000000/103542579124 8488365279385488285760935510827563042535107656213455035210185896802145 8988657532162595052101628696780645659537045942734115036462752790604371 8556790995621133471335274825151826081739080600475804133*SQRT7);\n \+ d97 := evalf( 9888481372937703286233292391644776557858101570605215540 0116707370656029900880107311909202943445174407340223241320702820995316 0565021407561734047038986025197738343068083606047258367367315629410758 0697625103613312459858518820472363481859436424357383815373560308626193 95040927408293806509116085797223171748664500000/2238833139857841336769 8603185630237724123134951956964103140015759835290272366328460204678755 8222100331323914225691512849189378051092962604503985772192207922976213 3508797549405865514419693444582247507928220342677921754299856317517876 6419538714490044376804245627385394935121266556463049801745804334235203 2636299-10331809128266026291629415474357490864128185305292769024027422 5893024289669675088500724011304103237989123743022388581363017973972010 9077026267797072546288050675200205598806014446450333237014789992288466 0058939445116012446012022620088958203841772967480963343801582807722556 928818012539837347673877772269100000/188295470131021138500408773638605 8681591516816817238360230447078203136271855872873019737489976636672256 7192113178428330461680239789147401556264572934584350124155874758600079 1073634518056639577985492676889852201675504987372272289140171737079179 899448080775825293401134862247826378999577811150583130657722991*SQRT7) ;\n dA7 := evalf( 18373337222157376386158912665429879774348649872 5258407401569327431514053125486678837540698920046240809427697518455493 2201796901549254806770306008403915292147074323055308165555029355075920 8984375000000000000000/39406564401454697649302696068165015742202314634 1803916822843572234361471128506466018674658055197730080880409124813749 9513475482467064076885423519356493994524350575239432451212120095835035 528495907168675310251-562565409160568395087178655199795636279359633851 5154528071016430216782731456280195091289975149884703750601771178008264 8477537735565226274569575498719205868544872991029813491716314453125000 000000000000/971236338138378558114565010807887583633852512364080782614 2252864222864840681084725235803717125435229472566259813059521973705279 0399081493744912502399810973791845863343992590556277734099468311937418 6491*SQRT7);\n dB7 := evalf( -23321213535246633743686880290203101 9764118278036411115028231226570291571591528625859972813996973572794422 3583878531498057253859922939093029282031524670823505897874782006208396 805873503340472099840000000/506668902147058309438895326869329586459339 6899298196390158969139057707473079858573359832337513915689790482123186 5574441093191025724585527236867605652583666648177294216799184060343018 0789117920006847+41388695141103600346792883061235595226772371892264866 8751599837325818473121394074205136273748198530384397084466841868750751 0883277306178118276867072516596692612354287682743923131788416319468544 000000/723812717352940442055564752670470837799056699899742341451281305 5796724961542655104799760482162736699700688747409367777299027289389226 5038909810865217976666640253277452570262943347168684159702858121*SQRT7 );\n dC7 := evalf( -291889225538133422511286360390331876888673777 4584086279160256146235754875001113111379314690149789677057575417642896 3138750715999121274982693325086785539388330994244692610981879522736105 565207000000000/847922428242487017520430714051924757914958466917015724 4230691119437200347421883425841563093556329799009121399219643660588490 8520546601821831378417020664309545904865741306030543420159421540499483 717+178628460580898915579691357949355812882073455137300544268429597220 4883437843117003863411275762665115775373985333036533442981691452270090 000649305182098733303788677297346209178001640770187800000000/417695777 4593532106011973960846919989728859442940964159719552275584827757350681 4905623463515055811817778923148865239707332467251500789074793782471438 7508914019235791829093746519311130155371918639*SQRT7);\n dE7 := e valf( -132284012575954268469329281492248628297705751597900978631365959 8403190591772790939867854424311174626137431246677796246274433154149389 2569599519524465132996729348393725102487450000000/17027091990873577731 3643076104113088900532156604819144410672156928692393716199227132090814 5328617743986731567374658819640453794089544772933514677836057275252787 43488505648601590761+6384783082325680201509619612882332333747847996990 0752226623259641302591262497761606312574183543008964323827280145039842 288494104691163702271751893524119096171021816575000000/812807461562889 3511124300327243635461802527600331693430672630943118803627828025984943 4449611841938830184700664530742677622118504335331365918055668518668940 318330219016233559*SQRT7);\n dF7 := evalf( -969292642590425091153 3662720944756989415006051014080012825681365098539707754014621482182075 3071578123396623096845614670788260146951442593472448172246557258153387 2394400000000/56145480892715524184711984983540047233424524792462177043 6620932693944025509378535580907894429050811907331221588102119873653531 1849844251916878920693535047496744994246307811*SQRT7-19266173867232970 8334447924071056403049397291366794298645439829442637760929672066882502 2645943436546801617113182676482585911691844441810094573569015362374621 0233249679000000000/16843644267814657255413595495062014170027357437738 6531130986279808183207652813560674272368328715243572199366476430635962 09605935549532755750636762080605142490234982738923433);\n dG7 := \+ evalf( 149854248920876672393287433764921583410869495275862926772469920 8729632699538969525808964091200941821731100184255248129696720524013561 616813374340822938963375000000000000000000000000/286071768022019894525 0933594083167831742784524228058210462587862006339561681740399865295914 8206344528758662839652118443765521274394626045381580270419780186354834 57891163565928951+2468312027838831673097355076841967805566960555440987 8996369691420255675268291203002059839033427903818963990020597696029346 75381170772130590423182926900000000000000000000000000/3950978285042944 2944797322766194848053150591520621531993688139708092357350659971022360 1851635257978749603452228664454725904336759803854764521109233989503342 3635366321475867*SQRT7);\n dH7 := evalf( -18579187566423623769797 2949832332866280865535009202646528162384428337376961864203877835325838 2796889914951549661463368124938521534535377196985308980000000000000000 0000000000/11773104894371804160513844823044774331098768791243523087725 8076794341637922133423525529729768614221220243845163560553193772841324 09462177714575896920363786263264912931298133*SQRT7-5534926378820115454 7224456328177700269305525072317797264379037735038756954494197846835512 9694739426930789518797899363021694654288130318087969699231442500000000 00000000000000000/5587552957805030863481967622365694484124653759653672 0686190738034139920220187132752592681271135955785480809053816833976092 189771276653827566003066336329715757400142324732409);\n dI7 := ev alf( -4089775865095210347057480197335735444893662460965398748248768201 3572969344279499236477917465601012829607658057342541670476143935552904 7108876885693274887122089352868847656250000000/10709368471005571772437 0852137164145753505749248988777142486666269634288530702890014437398472 0295839129445416655197046622061026548213795097688094307807679339108465 4796691558051-46506214944818799227977757446667864273500966595679058437 4913261470135175313079495085241024020420577345837819480160756433231617 6229647740830241871044429398276444349365234375000000/10709368471005571 7724370852137164145753505749248988777142486666269634288530702890014437 3984720295839129445416655197046622061026548213795097688094307807679339 1084654796691558051*SQRT7);\n dJ7 := evalf( 127131821666358082259 5971337158011831104838743008498507736591338004304327998420873027231067 9544914146957567109158717461606217795864148099010005135401345927027127 88417100000000000000/2489547337386585794586262254262757618986494179893 9087653810613903137538560455150159443835562813114898280021109901445225 4851533205554935904228710698786079640937318778089500849899-44252112481 0120366825292153058330236098892330996511217788012450040311585252095490 9766553777673220804497128668835144418265415172463981177050755143034699 3257388956318000000000000000/82984911246219526486208741808758587299549 8059964636255127020463437917952015171671981461185427103829942667370330 04817418283844401851645301409570232928693213645772926029833616633*SQRT 7);\n dK7 := evalf( 466905468895487478127849440203844444916568369 5453570568621959172041515632541303410175377715156773561717168584841365 010403433888881118937836586182910836530999661289262500000000000000/137 4299972958233226512986026977049000940215600700828696784259129654404341 3373351160687560403704131092235948432964603197097229592719824430705732 6943083758055765401808546472016829+30588632235650798473051320151288132 7680322344799491332322309694401004620409412992043006210050738517511143 9267656440890556578566431379568492550050309721964629195000000000000000 000/464739121290223796405357593663736377129541507483372023067140768482 1657192928186382841204001252604717181238600519431032834811939567090387 195175307254040127489651268888044947429*SQRT7);\n dL7 := evalf( - 7332160584530063913493524340567280125051209734518835586536546278390587 7268916327890061992034467780187625953976315479799344043057007181192044 60196656747545609775000000000000000000/5598778110230727957210947319556 3242579403528312654394522600087098743031592956995708491080494636219202 6226682216178777233358784483440707342776225864990269481634532768868933 94801*SQRT7-1417487417090036196490518426127302632525491402825085512120 8391853238337204295137628023814860471607619792030258306262234584208811 8804104425707152766396667691536043201812500000000000000/41078234994762 8510220567204835847510805083687229945292612316839043477622797525477513 1990575891459402896425167420103688561153401755004469773949169171433607 18675256692519136837654937);\n d18 := evalf( -7297890303149367141 5438131936613068847008634367054324317637388340814607851662348779538346 9811943270438355238722726536858255228944244635326461367708029575526427 622720341583465528998503558719511518744668296875000/143298465816934662 2970820467028317553108098688809331929455022045580045930889357992712841 1475800493953478943576666003255469100232254671084377567445916866074568 237430868684727610340664945297700405796127470760521-151469501699491878 1682792392466195064207160302317995218539074999662403088093822321943864 1454960580178892402387159061450851623457137389189566532171311864452413 243084895523518540258573212594252596228125000/117754074447120756573576 1684754519613378007517942142875477654462935457200405411973336873236406 4074312802662089574587901908162533797893949838994392378251891701443329 4180312159371045704726629308224763359197*SQRT7);\n d68 := evalf( \+ -196733479586935804318604616656723484951005316699205274742573692658153 2608243272501023291084061996907213872348813450717163036678363174603826 9521286700057933036087803781069669629747640740703710937500000000000000 /188113885086878247054954173482351547877047640748241754364098216098361 2606467562162298734226833194444661463901023541700895139951563360740358 04320876180319077034758909935524150234390982845185733578110700317961+4 2598679664845523571070462765165324319481028972479315168464781185850038 2242482844845495165401607623642201852640942859032791098563761406230300 122657840757990068069748996693532707147207382812500000000000000/400363 9998808597535374518742403347020794568212945248648673419010910698767185 4469857376526566836002166707957759698363959458740227861128557331415206 2408705849572305372316408954588244718734052944678253238743*SQRT7);\n \+ d78 := evalf( -120374309407867049472311156722253430581524625831762 1801943130161403563511675282060421269847805162644776614806938734163253 0535427885621320495941101283779593762251167642599729601851579759036254 88281250000000000000/1641446716506416394035012671103421025246202919006 2502100829296681520888228633503731138508995288136646912224291053718004 6469100014286750622439097746216708222840957942042888813197681341097155 67347367985942419689+2090892431089750781613857009125835798818674002770 5398609526029899129859879469589213325955575730000099818853762332168693 8344689696628246757584094412996673631050994204974516733960721750286865 2343750000000000000/28024700037914426239622167555424261406642488861082 3206599524577489381018537645185653584299919553552508257487896039087884 2155366097578669163594351764675506243626111205610296810692120457756316 376379900038949703*SQRT7);\n d88 := evalf( 2825670894677206933710 2341918541509086341323395248737729621243503414018145484713561161013150 0652547594107495601897699543879936871927622013754625827878982248907992 114437293719226264718505859375000000000000000/103542579124848836527938 5488285760935510827563042535107656213455035210185896802145898865753216 2595052101628696780645659537045942734115036462752790604371855679099562 1133471335274825151826081739080600475804133*SQRT7-63880118875700291700 4248587977387797948821676901697559278083258850967644483740435607039010 3382155411815551198285039678331402899806312915821437406351834884852301 34137197904834903842074366455078125000000000000000/2381479319871523240 1425866230572501516749033949978307476092909465809834275626449355673912 3239739686198337460025954850169352056682884645838643314183900552680619 2899286069840711320978491999879998853810943495059);\n d98 := eval f( 7530040563326850894082309475248234708576234724564955365838827606127 2606616022244006612333594244821761664698983847012552991741194951285416 1036969556885922770042432465310581380443549019502874614732747775774672 5165833753973713382199954082999174844558664847403064647159730557850526 2872318246104717433447596875000/54605686337996130165118544355195701766 1539876876999124466829652678909518838203133175723872093224634954448571 2821744215833887269538852746451316726151029461536005203679994022941135 4010236425477615792876298057138485896446337958963850649803752962170839 94342498933508632911005186964990987756523366910789073966739*SQRT7-3034 5721922475674624157811910305218799872169891365518437074520056296968442 2685497152246293723936226787634974866359878716481088743847535829155335 8924256265987414800732608684780957053967439686340529586355862643395827 3030870009914826348374566977204232816689947113002253494151789650914912 9304832540584148431109375000/22388331398578413367698603185630237724123 1349519569641031400157598352902723663284602046787558222100331323914225 6915128491893780510929626045039857721922079229762133508797549405865514 4196934445822475079282203426779217542998563175178766419538714490044376 8042456273853949351212665564630498017458043342352032636299);\n dA 8 := evalf( -115069397743994749652147537244185192681187555772736037503 7279830994972449250552497517022328237520695901939498387136313242195696 6476105639670884752865807427573028466900580717063173698516845703125000 0000000000/80421560002968770712862645037071460698372070682000799351600 7290274207083935727481670764608275913734858939610458803571329280710707 5640973235558202768355090866021582121290716759428767010276588767157487 0924699+32390753984626970472307875106682449081689622410041678311831983 9713579811894956206975263088118763986970269404107701267532449055810404 9261839794714864652920688830404025649709693275555419921875000000000000 0/22251024506750252766404684397608704541051561058261090729691901311934 5833500003651055152263159343721107216493012317193648417587942804295702 1695945429979669409571188729210870249644322888218819026486261250881*SQ RT7);\n dB8 := evalf( -104017084822803118080313314394541279550418 2140409039027316188209676496182452712104874617696082769842408142647776 4534968837207459823336107526895289011828027963165562753359315190117379 66251168000000000/7238127173529404420555647526704708377990566998997423 4145128130557967249615426551047997604821627366997006887474093677772990 2728938922650389098108652179766666402532774525702629433471686841597028 58121*SQRT7+1460571894867136437001955792025465478929339754203993566838 2015846225347387456487385214980454318309816763381951948637562437673883 6987624954051594885235994915258092218341496404721313859147115200000000 00/1034018167647057774365092503814958339712938142713917630644687579399 5321373632364435428229260232480999572412496299096824712896127698895005 558544409316853809520036182493224323277621024097737100408303);\n \+ dC8 := evalf( -1301881923330249473949544533935647818998078954495346495 0589765075327713655852245005609626918266199837561254627853150201037078 6443075558747923845458082400044213945074694764852402190532037437500000 00/1211317754632124310743472448645606797021369238452879606318670159919 6000496316976322630804419366185427155887713170919515126415502935228831 690196916717237758506557837963043718649060022774505785640531*SQRT7+127 9640268349855040776848875938683549328866210145239160260006778406866479 2290484008895872042673924342306644328421067580487979452956245200825793 90138535479901137705902069306987323466164246218750000000/1211317754632 1243107434724486456067970213692384528796063186701599196000496316976322 6308044193661854271558877131709195151264155029352288316901969167172377 58506557837963043718649060022774505785640531);\n dE8 := evalf( 17 8300605388658842615940299705400663977719354211736275214123921067481420 2488562818054904915110251209994579665402545441241312031022928087211916 435370205913477141090038361068750000000/729732513894581902772756040446 1989524308520997349391903314521011229674016408538305661034908551218902 8002781458913949413162305460980490268579200478688168939405175780788135 114967469-788705876653398978854836745056932198358159515097980859295731 2288463990693151932102762011655000019038256680222359645212930516968617 589239581647458106726166494188544531250000/399515531954640528512889338 1187549633767344074739306940500106734753310257745978873955252608039688 5187717903716464263350017651468232620501891925667576972868970026717821 538529*SQRT7);\n dF8 := evalf( 1404159416025911119385775578295091 1304328764189091495320282286326413676368639830722263557804154455994228 7482908084617723697217920455841800981504391925149967658933341843750000 000/488465683766625060406994269356798410930793365694420940279860211443 7313021931593259553898681532742063593781627816488442900785721309364499 16768466100337549132216814499428779557+7064409365124543787507226776633 0132267872318779988080057971609820944217298272629787743998994378302170 6927369291419299058819161756165186871688377265864281426524942282500000 0000/16282189458887502013566475645226613697693112189814031342662007048 1243767397719775318463289384424735453126054260549614763359524043645483 305589488700112516377405604833142926519*SQRT7);\n dG8 := evalf( - 1092169395458488902189910770554813807552254656986930148001531451790363 8047736333796080855037187574364693442810756117139821346990541829457265 697117875559714843750000000000000000000000/829608127263857694122770742 2841186712054075120261368810341504799818384728877047159609358152979839 9133400122234991143486920011695744415531606582784217362540429020278843 743411939579-179895790387034602776310846144346154468277308033830982416 3633498092649712270621319769828793898947412480328975951764007215491665 4585979220799310159778125000000000000000000000000/11457837026624538453 9912236021965059354136715409802442781695605153467836316913915964844536 9742248138373850011463126918705122576603431178817111216778569559692854 25623322800143*SQRT7);\n dH8 := evalf( 13910245410514072595203682 0659988644968662933454522925938634863569220524022937467695064291747863 7389464833433020313379341675633854093087712047155494531250000000000000 0000000000/55875529578050308634819676223656944841246537596536720686190 7380341399202201871327525926812711359557854808090538168339760921897712 76653827566003066336329715757400142324732409+4669277256620284343428965 3707093952978862505220981900662464580269721310800674126295266661284264 1242832882592465621461322610695086359513087148200625000000000000000000 0000000/11773104894371804160513844823044774331098768791243523087725807 6794341637922133423525529729768614221220243845163560553193772841324094 62177714575896920363786263264912931298133*SQRT7);\n dI8 := evalf( 149353787132586042839058715927751066094589816091979376300047229666757 7204258104728155098570653225200386375568202129181713529736730045350329 2337472558991644814232031250000000000000/15299097815722245389195836019 5948779647865356069983967346409523242334697901004128592053426388613691 3042064880935995780888658609354591135853840134725439541913012093542384 508293+116878313950482859387326686631490599890363532183012185241068660 7522243536372044122605518296921497694821307632520162384421044964163718 981846907273415029076491852531433105468750000/107093684710055717724370 8521371641457535057492489887771424866662696342885307028900144373984720 2958391294454166551970466220610265482137950976880943078076793391084654 796691558051*SQRT7);\n dJ8 := evalf( -332718250551622065859444095 9899215363579479632310950583092295241537188941441914842850417744675007 7805617417028775241912765008880739736157307511932772739017958815704375 0000000000000/24895473373865857945862622542627576189864941798939087653 8106139031375385604551501594438355628131148982800211099014452254851533 205554935904228710698786079640937318778089500849899+188497215624187382 0565038062410709713712748858577796064786744790727296877022216212489563 8059744803107534962336308626237695412492252760103163861030432160774543 9312500000000000000/14065239194274496014611651154026879203313526440078 5805953732281938630161358503673217196811089339632193672435649160707488 6166854268671954261179156490316834129589371627624298587*SQRT7);\n \+ dK8 := evalf( -118680951942590800066896754955905466528440245527060440 4453860509102132509189792737073752455960400602573668521561378416486608 029058313009967809816824988611808122145312500000000000000/137429997295 8233226512986026977049000940215600700828696784259129654404341337335116 0687560403704131092235948432964603197097229592719824430705732694308375 8055765401808546472016829-76874623445410219802594773648370401927627338 0105175641817787316785917447452384314970929849872590919926018231952659 687143597709158243983148059124000736998348593750000000000000000/464739 1212902237964053575936637363771295415074833720230671407684821657192928 1863828412040012526047171812386005194310328348119395670903871951753072 54040127489651268888044947429*SQRT7);\n dL8 := evalf(478630135339 5654268921794140460601249195091153679169238667143790981677826802939841 4206620292696942150973723410772091766992766011776280081615293503330104 026509597289062500000000000000/410782349947628510220567204835847510805 0836872299452926123168390434776227975254775131990575891459402896425167 4201036885611534017550044697739491691714336071867525669251913683765493 7+53438333918973357386888025041587676929035422384550469830625056089186 8116621699006436973579978529590180350892466953916022037118588788329429 00775465322509455414843750000000000000000/1623645651966911107591174722 6713340348027023210669774411554025258635479161957528755462413343444503 5687605737842691845397674047500197805129405105500847178149674014502971 9908449229*SQRT7);\n eqns := \{SOLN_=[soln],\n d12_=d12,d6 2_=d62,d72_=d72,d82_=d82,d92_=d92,dA2_=dA2,dB2_=dB2,dC2_=dC2,\n \+ dE2_=dE2,dF2_=dF2,dG2_=dG2,dH2_=dH2,dI2_=dI2,dJ2_=dJ2,dK2_=dK2,dL2_=d L2,\n d13_=d13,d63_=d63,d73_=d73,d83_=d83,d93_=d93,dA3_=dA3,dB3 _=dB3,dC3_=dC3,\n dE3_=dE3,dF3_=dF3,dG3_=dG3,dH3_=dH3,dI3_=dI3, dJ3_=dJ3,dK3_=dK3,dL3_=dL3,\n d14_=d14,d64_=d64,d74_=d74,d84_=d 84,d94_=d94,dA4_=dA4,dB4_=dB4,dC4_=dC4,\n dE4_=dE4,dF4_=dF4,dG4 _=dG4,dH4_=dH4,dI4_=dI4,dJ4_=dJ4,dK4_=dK4,dL4_=dL4,\n d15_=d15, d65_=d65,d75_=d75,d85_=d85,d95_=d95,dA5_=dA5,dB5_=dB5,dC5_=dC5,\n \+ dE5_=dE5,dF5_=dF5,dG5_=dG5,dH5_=dH5,dI5_=dI5,dJ5_=dJ5,dK5_=dK5,dL5_ =dL5,\n d16_=d16,d66_=d66,d76_=d76,d86_=d86,d96_=d96,dA6_=dA6,d B6_=dB6,dC6_=dC6,\n dE6_=dE6,dF6_=dF6,dG6_=dG6,dH6_=dH6,dI6_=dI 6,dJ6_=dJ6,dK6_=dK6,dL6_=dL6,\n d17_=d17,d67_=d67,d77_=d77,d87_ =d87,d97_=d97,dA7_=dA7,dB7_=dB7,dC7_=dC7,\n dE7_=dE7,dF7_=dF7,d G7_=dG7,dH7_=dH7,dI7_=dI7,dJ7_=dJ7,dK7_=dK7,dL7_=dL7,\n d18_=d1 8,d68_=d68,d78_=d78,d88_=d88,d98_=d98,dA8_=dA8,dB8_=dB8,dC8_=dC8,\n \+ dE8_=dE8,dF8_=dF8,dG8_=dG8,dH8_=dH8,dI8_=dI8,dJ8_=dJ8,dK8_=dK8,dL 8_=dL8\};\n return subs(eqns,eval(rk78interp)); \n else\n \+ return evalf[saveDigits]([soln]);\n end if;\nend proc: # of rungk78 " }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "rungk78c: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65990 "rungk78c := proc(fxy,eqn1 ,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,c2,c3,c4,c5,c6,c 7,c8,c9,\n cA,cB,cF,cG,cH,cI,cJ,cK,cL,cM,cN,a21,a31,a32,a41,a43,a51, a53,a54,a61,\n a63,a64,a65,a71,a74,a75,a76,a81,a84,a85,a86,a87,a91,a 94,a95,a96,a97,\n a98,aA1,aA4,aA5,aA6,aA7,aA8,aA9,aB1,aB4,aB5,aB6,aB 7,aB8,aB9,aBA,aC1,\n aDB,aC4,aC5,aC6,aC7,aC8,aC9,aCA,aCB,aD1,aD4,aD5 ,aD6,aD7,aD8,aD9,aDA,\n aE1,aE6,aE7,aE8,aE9,aEA,aEB,aEC,aED,aF1,aF6, aF7,aF8,aF9,aFA,aFB,aFC,\n aFE,aG1,aG6,aG7,aG8,aG9,aGA,aGB,aGC,aGE,a GF,aH1,aH6,aH7,aH8,aH9,aHA,\n aHB,aHC,aHE,aHF,aHG,aI1,aI6,aI7,aI8,aI 9,aIA,aIB,aIC,aIE,aIF,aIG,aIH,\n aJ1,aJ6,aJ7,aJ8,aJ9,aJA,aJB,aJC,aJE ,aJF,aJG,aJH,aJI,aK1,aK6,aK7,aK8,\n aK9,aKA,aKB,aKC,aKE,aKF,aKG,aKH, aKI,aL1,aL6,aL7,aL8,aL9,aLA,aLB,aLC,\n aLE,aLF,aLG,aLH,aLI,aM1,aM6,a M7,aM8,aM9,aMA,aMB,aMC,aME,aMF,aMG,aMH,\n aMI,aN1,aN6,aN7,aN8,aN9,aN A,aNB,aNC,aNE,aNF,aNG,aNH,aNI,f1,f2,f3,f4,\n f5,f6,f7,f8,f9,fA,fB,fC ,fD,fE,fF,fG,fH,fI,fJ,fK,fL,fM,fN,b1,b6,b7,b8,\n b9,bA,bB,bC,bD,bE,b F,bG,bH,bI,bJ,bK,bL,bM,e1,e6,e7,e8,e9,eA,eB,eC,eD,\n d12,d62,d72,d82 ,d92,dA2,dB2,dC2,dD2,dE2,dJ2,dK2,dL2,dM2,dN2,\n d13,d63,d73,d83,d93, dA3,dB3,dC3,dD3,dE3,dJ3,dK3,dL3,dM3,dN3,\n d14,d64,d74,d84,d94,dA4,d B4,dC4,dD4,dE4,dJ4,dK4,dL4,dM4,dN4,\n d15,d65,d75,d85,d95,dA5,dB5,dC 5,dD5,dE5,dJ5,dK5,dL5,dM5,dN5,\n d16,d66,d76,d86,d96,dA6,dB6,dC6,dD6 ,dE6,dJ6,dK6,dL6,dM6,dN6,\n d17,d67,d77,d87,d97,dA7,dB7,dC7,dD7,dE7, dJ7,dK7,dL7,dM7,dN7,\n d18,d68,d78,d88,d98,dA8,dB8,dC8,dD8,dE8,dJ8,d K8,dL8,dM8,dN8,\n yout,yerr,rs,hmx,hmn,hstrt,temp,sgn,eqns,maxstps,t iny,yscale,err,\n htemp,hnext,saveDigits,eps,Options,j,prntflg,t,tt, errcntl,\n ymax,ymaxtemp,x,y,errc,x0,y0,xn,f,outpt,minstepsize,ftd,i nc,rk78step,\n rk78interp,finished,maxstepsize,laststep,safety,pgrow ,pshrink,errcontrol;\n\nrk78interp := proc(x_rk78interp::realcons)\n \+ local b1,b6,b7,b8,b9,bA,bB,bC,bD,bE,bJ,bK,bL,bM,bN,xF,xS,yF,\n f1,f 6,f7,f8,f9,fA,fB,fC,fD,fE,fJ,fK,fL,fM,fN,\n d12,d62,d72,d82,d92,dA2, dB2,dC2,dD2,dE2,dJ2,dK2,dL2,dM2,dN2,\n d13,d63,d73,d83,d93,dA3,dB3,d C3,dD3,dE3,dJ3,dK3,dL3,dM3,dN3,\n d14,d64,d74,d84,d94,dA4,dB4,dC4,dD 4,dE4,dJ4,dK4,dL4,dM4,dN4,\n d15,d65,d75,d85,d95,dA5,dB5,dC5,dD5,dE5 ,dJ5,dK5,dL5,dM5,dN5,\n d16,d66,d76,d86,d96,dA6,dB6,dC6,dD6,dE6,dJ6, dK6,dL6,dM6,dN6,\n d17,d67,d77,d87,d97,dA7,dB7,dC7,dD7,dE7,dJ7,dK7,d L7,dM7,dN7,\n d18,d68,d78,d88,d98,dA8,dB8,dC8,dD8,dE8,dJ8,dK8,dL8,dM 8,dN8,\n s,t,jF,jM,jS,n,h,data,xx,ys,saveDigits;\n options `Copyri ght 2007 by Peter Stone`;\n \n data := SOLN_;\n saveDigits := Di gits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n xx := eva lf(x_rk78interp);\n n := nops(data);\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable is outside the interpolation interval: %1\",evalf(data[1,1])..evalf(d ata[n,1]);\n end if;\n\n d12 := d12_; d62 := d62_; d72 := d72_; d8 2 := d82_; d92 := d92_; dA2 := dA2_;\n dB2 := dB2_; dC2 := dC2_; dD2 := dD2_; dE2 := dE2_; dJ2 := dJ2_; dK2 := dK2_;\n dL2 := dL2_; dM2 \+ := dM2_; dN2 := dN2_; \n d13 := d13_; d63 := d63_; d73 := d73_; d83 \+ := d83_; d93 := d93_; dA3 := dA3_;\n dB3 := dB3_; dC3 := dC3_; dD3 : = dD3_; dE3 := dE3_; dJ3 := dJ3_; dK3 := dK3_;\n dL3 := dL3_; dM3 := dM3_; dN3 := dN3_;\n d14 := d14_; d64 := d64_; d74 := d74_; d84 := \+ d84_; d94 := d94_; dA4 := dA4_;\n dB4 := dB4_; dC4 := dC4_; dD4 := d D4_; dE4 := dE4_; dJ4 := dJ4_; dK4 := dK4_;\n dL4 := dL4_; dM4 := dM 4_; dN4 := dN4_;\n d15 := d15_; d65 := d65_; d75 := d75_; d85 := d85 _; d95 := d95_; dA5 := dA5_;\n dB5 := dB5_; dC5 := dC5_; dD5 := dD5_ ; dE5 := dE5_; dJ5 := dJ5_; dK5 := dK5_;\n dL5 := dL5_; dM5 := dM5_; dN5 := dN5_;\n d16 := d16_; d66 := d66_; d76 := d76_; d86 := d86_; \+ d96 := d96_; dA6 := dA6_;\n dB6 := dB6_; dC6 := dC6_; dD6 := dD6_; d E6 := dE6_; dJ6 := dJ6_; dK6 := dK6_;\n dL6 := dL6_; dM6 := dM6_; dN 6 := dN6_;\n d17 := d17_; d67 := d67_; d77 := d77_; d87 := d87_; d97 := d97_; dA7 := dA7_;\n dB7 := dB7_; dC7 := dC7_; dD7 := dD7_; dE7 \+ := dE7_; dJ7 := dJ7_; dK7 := dK7_;\n dL7 := dL7_; dM7 := dM7_; dN7 : = dN7_;\n d18 := d18_; d68 := d68_; d78 := d78_; d88 := d88_; d98 := d98_; dA8 := dA8_;\n dB8 := dB8_; dC8 := dC8_; dD8 := dD8_; dE8 := \+ dE8_; dJ8 := dJ8_; dK8 := dK8_;\n dL8 := dL8_; dM8 := dM8_; dN8 := d N8_; \n\n # Perform a binary search for the interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1 ]1 do\n jM := trunc((jF+jS)/ 2);\n if xx>=data[jM,1] then jF := jM else jS := jM end if;\n \+ end do;\n if jM = n then jF := n-1; jS := n end if;\n else \n while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if \+ xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n \+ if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xF := data[jF,1];\n xS := data[j S,1];\n yF := data[jF,2];\n f1 := data[jF,3];\n f6 := data[jF,4] ;\n f7 := data[jF,5];\n f8 := data[jF,6];\n f9 := data[jF,7];\n \+ fA := data[jF,8];\n fB := data[jF,9];\n fC := data[jF,10];\n f D := data[jF,11];\n fE := data[jF,12];\n fJ := data[jF,13];\n fK := data[jF,14];\n fL := data[jF,15];\n fM := data[jF,16];\n fN \+ := data[jF,17];\n\n # Calculate the parameters.\n h := xx-xF;\n \+ s := h/(xS-xF);\n b1 := ((((((d18*s+d17)*s+d16)*s+d15)*s+d14)*s+d13) *s+d12)*s+1;\n b6 := ((((((d68*s+d67)*s+d66)*s+d65)*s+d64)*s+d63)*s+ d62)*s;\n b7 := ((((((d78*s+d77)*s+d76)*s+d75)*s+d74)*s+d73)*s+d72)* s;\n b8 := ((((((d88*s+d87)*s+d86)*s+d85)*s+d84)*s+d83)*s+d82)*s;\n \+ b9 := ((((((d98*s+d97)*s+d96)*s+d95)*s+d94)*s+d93)*s+d92)*s;\n bA \+ := ((((((dA8*s+dA7)*s+dA6)*s+dA5)*s+dA4)*s+dA3)*s+dA2)*s;\n bB := (( ((((dB8*s+dB7)*s+dB6)*s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := ((((((d C8*s+dC7)*s+dC6)*s+dC5)*s+dC4)*s+dC3)*s+dC2)*s;\n bD := ((((((dD8*s+ dD7)*s+dD6)*s+dD5)*s+dD4)*s+dD3)*s+dD2)*s;\n bE := ((((((dE8*s+dE7)* s+dE6)*s+dE5)*s+dE4)*s+dE3)*s+dE2)*s;\n bJ := ((((((dJ8*s+dJ7)*s+dJ6 )*s+dJ5)*s+dJ4)*s+dJ3)*s+dJ2)*s;\n bK := ((((((dK8*s+dK7)*s+dK6)*s+d K5)*s+dK4)*s+dK3)*s+dK2)*s;\n bL := ((((((dL8*s+dL7)*s+dL6)*s+dL5)*s +dL4)*s+dL3)*s+dL2)*s;\n bM := ((((((dM8*s+dM7)*s+dM6)*s+dM5)*s+dM4) *s+dM3)*s+dM2)*s;\n bN := ((((((dN8*s+dN7)*s+dN6)*s+dN5)*s+dN4)*s+dN 3)*s+dN2)*s;\n \n # Calculate the interpolated y value.\n t := b 1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD\n + bE*fE + bJ*fJ + bK*fK + bL*fL + bM*fM \+ + bN*fN;\n ys := yF + t*h;\n Digits := saveDigits;\n evalf(ys); \nend proc: # of rk78interp\n\nrk78step := proc(x_rk78step::realcons) \n local c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,a21,a31,a32,a41,a43,a51,a53,a 54,\n a61,a63,a64,a65,a71,a74,a75,a76,a81,a84,a85,a86,a87,a91,a94,a9 5,a96,\n a97,a98,aA1,aA4,aA5,aA6,aA7,aA8,aA9,aB1,aB4,aB5,aB6,aB7,aB8 ,aB9,aBA,\n aC1,aC4,aC5,aC6,aC7,aC8,aC9,aCA,aCB,aD1,aD4,aD5,aD6,aD7, aD8,aD9,aDA,\n aDB,aDC,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC,fD,b1,b6, b7,b8,b9,bA,bB,\n bC,bD,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDigit s;\n options `Copyright 2004 by Peter Stone`;\n \n data := SOLN_ ;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)), Digits+5);\n\n # procedure to evaluate the slope field\n fn := pro c(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n \+ if val=lasterror or not type(val,numeric) then\n error \"ev aluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n \+ end if;\n val;\n end proc;\n\n xx := evalf(x_rk78step); \n n := nops(data);\n if (data[1,1]data[n,1] or xxdata[1,1])) then\n error \"independent variable is outside the \+ interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n e nd if;\n\n c2 := c2_; c3 := c3_; c4 := 0.125; c5 := 0.3125; c6 := 0. 375; c7 := 0.1475;\n c8 := 0.465; c9 := c9_; cA := 0.65; cB := cB_; \+ a21 := c2; a31 := a31_;\n a32 := .625e-1; a41 := .3125e-1; a43 := .9 375e-1; a51 := .3125;\n a53 := -1.171875; a54 := 1.171875; a61 := .3 75e-1; a64 :=.1875; a65 := .15;\n a71 := a71_; a74 := a74_; a75 := a 75_; a76 := a76_; a81 := a81_; a84 := a84_;\n a85 := a85_; a86 := a8 6_; a87 := a87_; a91 := a91_; a94 := a94_; a95 := a95_;\n a96 := a96 _; a97 := a97_; a98 := a98_; aA1 := aA1_; aA4 := aA4_; aA5 := aA5_;\n \+ aA6 := aA6_; aA7 := aA7_; aA8 := aA8_; aA9 := aA9_; aB1 := aB1_; aB4 := aB4_;\n aB5 := aB5_; aB6 := aB6_; aB7 := aB7_; aB8 := aB8_; aB9 \+ := aB9_; aBA := aBA_;\n aC1 := aC1_; aC4 := aC4_; aC5 := aC5_; aC6 : = aC6_; aC7 := aC7_; aC8 := aC8_;\n aC9 := aC9_; aCA := aCA_; aCB := aCB_; aD1 := aD1_; aD4 := aD4_; aD5 := aD5_;\n aD6 := aD6_; aD7 := \+ aD7_; aD8 := aD8_; aD9 := aD9_; aDA := aDA_; aDB := aDB_;\n aDC := a DC_; b1 := b1_; b6 := b6_; b7 := b7_; b8 := b8_; b9 := b9_; bA := bA_; \n bB := bB_; bC := bC_; bD := .25;\n\n # Perform a binary search \+ for the interval containing x.\n n := nops(data);\n jF := 0;\n j S := n+1;\n\n if data[1,1]1 do\n \+ jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := j M else jS := jM end if;\n end do;\n if jM = n then jF := n-1 ; jS := n end if;\n else\n while jS-jF>1 do\n jM := trun c((jF+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM e nd if;\n end do;\n if jM = n then jF := n-1; jS := n end if; \n end if;\n \n # Get the data needed from the list.\n xk := da ta[jF,1];\n yk := data[jF,2];\n\n # Do one step with step-size .. \n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n \+ t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t *h);\n t := a81*f1 + a84*f4 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn (xk + c8*h,yk + t*h);\n t := a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97 *f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4* f4 + aA5*f5 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA* h,yk + t*h);\n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8 *f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,yk + t*h);\n t := aC1* f1 + aC4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + aC B*fB;\n fC := fn(xk + h,yk + t*h);\n t := aD1*f1 + aD4*f4 + aD5*f5 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB;\n fD := fn(x k + h,yk + t*h);\n\n # Calculate the intermediate y value.\n t := \+ b1*f1 + b6*f6 + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD; \n ys := yk + t*h;\n \n Digits := saveDigits;\n evalf(ys);\nen d proc: # of rk78step \n\n # start of main procedure rungk78\n x : = lhs(eqn1);\n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs );\n xn := rhs(rs);\n y0 := rhs(eqn2);\n\n # Get the options.\n \+ # Set the default values to start with.\n maxstps := 2000;\n t : = Float(1,-Digits);\n hmx := 0.5;\n hstrt := evalf(0.1*10^(-ceil(D igits/10)));\n hmn := min(0.000005,hstrt/2000);\n errcntl := 0;\n \+ ymaxtemp := 0;\n outpt := 'rkinterp';\n prntflg := false;\n Op tions := [];\n if nargs>3 then\n Options:=[args[4..nargs]];\n \+ if not type(Options,list(equation)) then\n error \"each op tional argument must be an equation\"\n end if;\n if hasopti on(Options,'maxsteps','maxstps','Options') then\n if not type( maxstps,posint) then\n error \"\\\"maxsteps\\\" must be a p ositive integer\"\n end if;\n end if;\n if hasoption (Options,'tolerance','t','Options') then \n tt := evalf(t); \n if not type(tt,float) or \n tt>Float(1,-iquo(Digit s,2)) or tthmx) or evalf(hstrttrue then prntflg := false end if ; \n end if;\n if nops(Options)>0 then\n error \"%1 \+ is not a valid option for %2\",op(1,Options), procname;\n end if; \n end if;\n\n if prntflg then\n print(`method: Prince-Dorman d 13 stage, order 7-8`);\n print(`an embedded order 7 scheme prov ides error control`);\n if outpt='rkinterp' then\n print( `10 extra stages are used to construct the interpolation procedure`); \n end if;\n print(``);\n end if;\n\n saveDigits := Digi ts;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n \n # proc edure to evaluate the slope field\n fn := subs(\{FXY_=evalf(fxy),X_= x,Y_=y\},\n proc(X_,Y_)\n local val; \n val := traperro r(evalf(FXY_));\n if val=lasterror or not type(val,numeric) then \n error \"evaluation of slope field failed at %1\",evalf([X_, Y_],saveDigits);\n end if;\n val;\n end proc);\n\n ## coefficients essentially those of Prince-Dormand \n # nodes\n c2 \+ := evalf(1/18);\n c3 := evalf(1/12);\n c4 := 0.125;\n c5 := 0.31 25;\n c6 := 0.375;\n c7 := 0.1475;\n c8 := 0.465;\n c9 := eval f(5490023248/9719169821);\n cA := 0.65;\n cB := evalf(309928761492 96355/33518267164510641);\n\n # linking coefficients\n a21 := c2; \n a31 := evalf(1/48);\n a32 := .625e-1;\n a41 := .3125e-1;\n \+ a43 := .9375e-1;\n a51 := .3125;\n a53 := -1.171875;\n a54 := 1. 171875;\n a61 := .375e-1;\n a64 :=.1875;\n a65 := .15;\n a71 : = evalf(215595617/4500000000);\n a74 := evalf(202047683/1800000000); \n a75 := evalf(-28693883/1125000000);\n a76 := evalf(23124283/180 0000000);\n a81 := evalf(14873762658037143/879168438156250000);\n \+ a84 := evalf(3467633544794897/8940695981250000);\n a85 := evalf(1474 287494383247/40978189914062500);\n a86 := evalf(26709270507070017/13 5600555715625000);\n a87 := evalf(-14591655588284/84484570233063);\n a91 := evalf(758633103902194688204908350244133766427767690761775053 6566352/\n 10979446160149121786022035333858103139405922 0336451160078730445);\n a94 := evalf(-236057339412812449835946465344 221735535939129430991059693568/\n 372184615598275314 780407977418918750488336340123563254504171);\n a95 := evalf(-3299739 166368883603096250588167927276977533790499480498577408/\n \+ 20470153857905142312922438758040531276858498706795978997729405);\n a96 := evalf(469591960369484621547055463806527127397146850236917023 5542016/\n 3386880001944305364501712594512160629443860 6951244256159879561);\n a97 := evalf(2918518118983942013846029396406 27532330843113837053004434432000000/\n 3101742337780616456 20360730197195350622945922304711702829528117367);\n a98 := evalf(699 2959981041103840944260661352231159203510904000000/\n \+ 33042342481018810238716485165383193327572243242031481);\n aA 1 := evalf(99299034813490800741867453179778547/54097112353915116290695 2826011200000);\n aA4 := evalf(-2493835259080554724582/1010153717930 905426875);\n aA5 := evalf(-48550347897506146536052/1666753634585993 95434375);\n aA6 := evalf(-24871192635697392099560348960246/93949207 2180864357472739828818125);\n aA7 := evalf(4787760892169294822376739 25052922000/168119099731629344552415590032785027);\n aA8 := evalf(65 60308981643238155096750/23314158982833116227901307);\n aA9 := evalf( 1586281686644478270321241459439899956623408540189275177/\n \+ 12818966182821619734532382093543907143647820508227904000); \n \+ aB1 := evalf(-1021160033863229989781276000849048755221412693647915050 439\\\n135041845250978184347211657780875473591602999198725475718205734 87921693/\n84016717385376362440519288454722754561118206109968455863629 9155694130070154\\\n84884082989277327146750610032897620427741658059440 288);\n aB4 := evalf(33859087260675221974250714335702190271727116952 4361004010718467428\\\n498066558752974165816979255870352236800/\n20308 2120735150879650585455213299620604169484916038024212568757049115731089 3192267\\\n1691153944392874968051);\n aB5 := evalf(68189290605616416 78794854838582085958868479028874368076442204966\\\n1712817412461535969 920258787664375619072/\n7446344426955532253854800024487652755486214446 9213942211275210918009101399417049\\\n796200897796107208216187);\n a B6 := evalf(-173428204373242447407263149851461009648683533893553407905 814537\\\n676062289352450327468037503894216894575618794348138046356095 1840/286345537377499\\\n8059124622796216224892499092159756958098634821 3480206660351124448902040471191908\\\n1949534640172065152437496912477) ;\n aB7 := evalf(-33995492802231244436964234901030037667078923263747 559461389750009674\\\n666902411113487210065091287752549522126826588427 65965521154240000000/\n21242438510511769164808770310383807979042545628 79124248515469223893284855001452142892\\\n2544896130453883076607244244 4722564103495915888123);\n aB8 := evalf(1445280819094373385634740329 356404942807003600645554063735157589\\\n430888941210838990659960048525 3194980566957563315340127500000/\n973298753951638431793701721528200883 78991468031329892681461507130149534114266524\\\n5758696799918623095581 715765886887649741383);\n aB9 := evalf(-8472057141602392891133074247 9353907795165831891759198026230404283861227\\\n57000087660169577009301 95545053374220841398660187944621107065829310608865394026418258355/\n63 3587043839807269984161128303227064853003326302890606270194592859608259 7958856069746043\\\n83062536110958914915655909714323874894158841037320 12574255897878321824);\n aBA := evalf(115188988949323598098458035263 894669359112068207548636038131244\\\n599058496172710646622536373145562 218909633738697549245770000/\n2243570142370464710927664468101698486398 996665906229151194776008494392508416627\\\n081235479484459021638320533 3034660617626349);\n aC1 := evalf(4593281064317483024509634647750392 35995235823956662396451195998927577268\\\n4877449973390518695924713226 286572578736530472834153248086868656138562517855998017/\n1774462046587 1688149132920717107119535840352439228211629412035184660002326600386440 26901\\\n5037114703567382153091055676464537278415276180043623379146735 259080);\n aC4 := evalf(-2291872762438069505504/48002504676076625885 1);\n aC5 := evalf(-3829018311866050387904/8800459190614048078935); \n aC6 := evalf(-119024507848521171750368495430726392077372812820920 243922059451114023114\\\n534313974490295928667164452370524727491526842 25706199808363810067680844124313199720216/\n39027963884433740746981073 142211891564438131540307383043944485684896538110250163532437770\\\n633 61905452458133768384323006807684106969502974315306145441090661903);\n \+ aC7 := evalf(1037908314036741011899185407808536418181169960700477239 389412622296538590738\\\n275594044803407802645441332207145111046007067 70199001221447277372771724815301829769090000000/\n18607341629035010556 7140245079911014002392404081859722359817008036767405786594383382602248 12\\\n9298109596439086420249460663886572779483205473601032529117933928 11005660011);\n aC8 := evalf(221739354741161368749256895081165027689 695019046217666482320025502970869733\\\n954534184732550700077844431250 55689564267352323284187488733281588796458565000000/\n36018276651908651 7290287373365305669557865350908981820576682626423481010258204982260112 8646\\\n38685856922169867385351140408170574781308953247471695406871299 1);\n aC9 := evalf(-191890003167863127569293558654230413602435173577 13254431851103457\\\n1124916677901674189266410393847918931321939925119 385278541655712634001780676155985\\\n694128871968486740133886208759199 490781675187890225/\n3790426196281606248823467166242840247167397157185 560700918736943056161704506053709\\\n335276289276219033002071105959829 3019791198792692256120165351283086234983197446499\\\n47765781518050752 5732617170420104);\n aCA := evalf(1088483236620904455515569170435975 24278386273109098072442136097451354\\\n0080692736694921208465232445016 7296221801385824578868909912928717407455650141514750/\n496104022034162 5119414822844148091046273095414660077470952247161144267494754029846409 \\\n321957152695230661471812705068001251501362749050294327665345003393 );\n aCB := evalf(52937659666508210033827518702762751892423288469380 690044675929843159\\\n920572709749427821041022279801256891657473061484 83673797715142827572943617142/\n39322296440090144846081694734948892748 6565712320451461969268130647664469897024822886\\\n60537131956921062000 638270644160600089352629397284659003195379);\n aD1 := evalf(56968021 2831962579928235561501592296739039413185583477836057\\\n58669498353345 5219597857726731209298030232397874998835084311865018414451790819293/\n 6926861592937422556970058872556298106189603289388962030260925648126082 382963\\\n866701902607128682701842710738030101024505310750085520539815 44000);\n aD4 := evalf(-13357914135066126646436906844788064710775267 46614666064/\n 1145749077986017791791102718149039831204 29559544320175);\n aD5 := evalf(-15914155430441680998820264959592886 88569084060473110176/\n 2100539976307699284950354983273 239690541208591645869875);\n aD6 := evalf(99217715311523532595316194 170238964853285338136185141571785948\\\n551721169261393334846949070467 40484185513645461426206111545031702725465801236/\n13901010648009730553 3044858811938895663607687449332371184054332071535773267895\\\n28397141 451118594610462558600526703691742186744833524905695925);\n aD7 := ev alf(452838861465082773821681634758173282324872515399828743111450100455 8\\\n81177211932178436457724704481475632676311680944126483011968014341 724969134600000/\n3749968613937193804818619562078180460571358750813903 2186068593067105135107874364916\\\n36884754537478878549081411136134710 7395256956751805309676616433);\n aD8 := evalf(-522134222154601542911 11308670607835882021259067834967580748\\\n4478216338666918002943098445 55902016234753372137173275040559724004498750000/\n24545472145277947397 37788219805038921221180157083760926006493259422376876512\\\n0517280174 928611157989217284831799955434786270027850501699);\n aD9 := evalf(10 8098422469414239226903284856641320943360455669974953785719527632158987 55376\\\n6911579827556526313530584274015085606878053809467217672333748 762748654226423728571846862778307/543263375693542322925450623099737062 699373091099219754572125377272616606396022366159406307968\\\n405884806 53061461784537517879338663860078462658416499414117830986493226243648); \n aDA := evalf(-101912618078902269105838396555872951317548863953465 038810523\\\n396528350627890888117975417419166179973359893248574742913 08473133116955/\n43523270504992052415200000778393123559702027824914178 185064554734636806873512\\\n570807991298990013352376090852530378302501 506172721669);\n aDB := evalf(54/307);\n\n # weights\n b1 := eva lf(212810988215683677989664967567559/509757550445899998416452893058080 0);\n b6 := evalf(-570667999368605802515460802224128/102911458122777 63122885317774476825);\n b7 := evalf(3970894643399159150754126826496 000000000000/\n 165929048672309331914574933876969390 21741363);\n b8 := evalf(177094288219480472437690862000000000000/\n \+ 251729356670100506734814442705774463449);\n b 9 := evalf(-6682260944829585092021217651364511978771327320302299450040 605079397\\\n2052314809461629969645683/8795230522033833696944764389915 08163634568215629859987780\\\n22435070001091778042097545895594560);\n \+ bA := evalf(314652731163869955629145958568800000/4763402074205513566 75670184044905167);\n bB := evalf(1770149540887896477075228489907574 325195043146860670757844765030\\\n382124505360953653163603856349336882 13244039743969578872631174179769/\n11190199836289918385223841012611048 59676427163726922121733732080377576616485631\\\n9330679851009081324438 62205090961383250990215178108200);\n bC := evalf(-454665916000392064 556420344242099/1909482158429176288068071462671400);\n bD := 0.25;\n \n # error coefficients\n e1 := evalf(5594512509095524480818508922 36801/45878179540130999857480760375227200);\n e6 := evalf(7160976011 6422713354476914206310528/92620312310499868105967859970291425);\n e7 := evalf(-3580488005821135667723845710315526400000000/\n 497 78714601692799574372480163090817065224089);\n e8 := evalf(-279725625 45477622404092544611840050000000/\n 15858949470216331924 293309890463791197287);\n e9 := evalf(471560340278689218632246039700 5251071558300477722522246\\\n86621762531930221518280119324115757721/\n 2638569156610150109083429316974524490903704646889579963340673052100032 \\\n75334126292637686783680);\n eA := evalf(-11189025018191048961637 01784473602000/1429020622261654070027010552134715501);\n eB := evalf (88147315286003959023733493243065519345795376001177086741745644\\\n035 284828010330363433456007369695214461423474478023841014226368181849/\n1 1190199836289918385223841012611048596764271637269221217337320803775766 164\\\n85631933067985100908132443862205090961383250990215178108200);\n eC := evalf(-4855786107375199096235011683247451/1718533942586258659 2612643164042600);\n eD := 0.25;\n\n ## nodes and linking coeffici ents for 10 extra stages used for interpolation\n if outpt='rkinterp ' then\n cF := 0.3;\n cG := 0.45;\n cH := 0.1;\n c I := 0.325;\n cJ := 0.4;\n cK := 0.3;\n cL := 0.7;\n \+ cM := 0.093;\n cN := 0.1;\n aE1 := b1; aE6 := b6; aE7 := \+ b7; aE8 := b8; aE9 := b9;\n aEA := bA; aEB := bB; aEC := bC; aED \+ := bD;\n aF1 := evalf(7655604263677347231687884987039490396362768 70328030229161/\n 171725851016946643437730186847626752460 07531887829972000000);\n aF6 := evalf(251351940438431551690790599 888191465432039791286044610008/\n 86671387751246383347287 29068048943354143597401272258640625);\n aF7 := evalf(480082402791 9361909251777552529054126484845605415906306688000/\n 2185 6408088141681323308123248023872241402265971824672679821141);\n aF 8 := evalf(600174070716137053705327664842813167812366318910338123000/ \n 221911663828405957701338953428589793970885707019951414 91989);\n aF9 := evalf(-11973650738380816043422287354354639276464 6746659139287327128421058220832535826557569989413012106286389423/46706 2759256725457498256348662801361827172633503753486900594039623139053459 7420881533910063587768580320000);\n aFA := evalf(3497153401251876 800992302893706955005851388892271815703/\n 76413476153731 5978127257306418176063147136539921112478675);\n aFB := evalf(2211 9378039303314787070924733206228192592360253951369649928331595576865372 847906381310853940293596993580593319567358964033047986996915031879/134 3456877079791249290112788081588453468327617328597722645945270785957070 3953575263974074002675161858819642152953002382753602247116576790750000 );\n aFC := evalf(14836068958754657207832471/15159487660365174446 06125000);\n aFE := evalf(-16149661721318465019874593/15159487660 36517444606125000);\n aG1 := evalf(177223881361345813432765938160 47550299367123088516363412651996074979998189057967/3873330971509197658 12139967637123524604648999071511440795849856425204762016000000);\n \+ aG6 := evalf(-143145176362175557242178222538694090971297860200274087 6721383350551137201782351/81454191989867356610157888103560327466255700 39793581179366640148942001407671875);\n aG7 := evalf(140881891571 4248121462200364855348914915467524640479212550950379053607904405968000 /684691956138962589841520326546517426026228931152104342322108339801903 4441694315109);\n aG8 := evalf(7760106479402203207951811019723785 836801738366978905334560202583887990331887125/208553661586086053734755 07171895407878291854847980832395028163432511249348252783);\n aG9 \+ := evalf(-271422553406760870012395393270049967060010390163282723726217 8211989693364172600131184450384411367971021077577562644768162644029/11 7052761088828617970971422089801730148418638453789469288900508451815444 20653624497924067553735480022276257977940109888157440000);\n aGA \+ := evalf(3148216709406629374730125710751078242618429758626182916133453 96101801150166619/4308825405059720260546995487468542338042766734447385 053818168431872468352071350);\n aGB := evalf(-5556951889195881369 3823017806105291298541565455705169438341462153141697324505462998267838 1452889763714291137770381129127086327262855997671030731440191715814931 0821/24241676369932966108724842563933136154059159880772817536815613561 9027162760591662367939339388011404425253053116193421300869923978619043 1933967068322357945428528000000);\n aGC := evalf(-263336507733247 658891132073684587771410642360023/\n 34192704662333814392 268264104604926411249609000000);\n aGE := evalf(31772153954440530 605767279490238288299489694253143/\n 38295829221813872119 34045579715751758059956208000000);\n aGF := evalf(249144228355705 06403628086602106072163346918857/\n 153183316887255488477 361823188630070322398248320);\n aH1 := evalf(25283525574453341303 8520706879957543746645201236960305943/\n 5269691214878328 482686665984509463568184868282140413200000);\n aH6 := evalf(10540 261779188085653635950761202642486865894310120841871912/\n \+ 7774375001942168740021718703517721706056462525933748309375);\n a H7 := evalf(3294630524344268647933453764343428575135799438059869216000 00/\n 316210900032115422929660677172577106210118912632416 8831715033);\n aH8 := evalf(-390943231474371642246691061781113405 1310571336005370843755000/\n 1293847887792004861427971809 082434344633302628738330748087771);\n aH9 := evalf(41020532499088 1783200788845564801189201791596200037802411984475827798121186762667794 863522113824052087181/231170835025383880533898213021781303308870844656 029681153226723961151662688913594231548516258505790160000);\n aHA := evalf(-6198263674896507586832273836173319664373272209979522233483/ \n 891051989018476883076016418915209559773827325581172645 6665);\n aHB := evalf(2384612132895479428924999196949565989534929 0573489878841727197234955050564831788180154261639754387760326994742121 6453117546915298828077037677/38681365318729822373463357621245333376073 1173660970101130745884140034843707572194300389876971829377365733539184 1362089136260306164247299700000);\n aHC := evalf(2935950468913262 88589459819/1964152036494735628236975000);\n aHE := evalf(-335295 180866460405571062399/1920504213461519280942820000);\n aHF := eva lf(-232674780871602991454787/436478230332163472941550);\n aHG := \+ evalf(2475756688892115010904904/2400630266826899101178525);\n aI1 := evalf(11389931048534314808173041897922884956943511/\n \+ 390054306159382801299076794769734721536000000);\n aI6 := evalf(3 2658039770570798626197629912277630777233/\n 1230396727290 314247879094272725342148600000);\n aI7 := evalf(83807707837333296 40168039780476398070908750/\n 242403138305152823011950987 881940326638166571);\n aI8 := evalf(-3138368057588320476038575556 128628798241875/\n 20476838412773679685964541643689980445 6573888);\n aI9 := evalf(2022466258244049535934161591415883645025 63055156288260451373128506106211537976037054767225423/6895694248731013 4018496223438295286567242831223460520355772440847842670426512681449570 30400000);\n aIA := evalf(-55568358123605081179520758704205888126 39/\n 867819412332654457239154687688639395729920);\n \+ aIB := evalf(-263973047308137777086800747744345709395014440354610413 8619981807861609063651988070710147905853220002061610207881268129100507 3/48974663849785073734959973448119097165462799052396147846678127223943 478115398209306194661705458118396738541769929989104128000000);\n \+ aIC := evalf(-4618594409/2486822400000);\n aIE := evalf(183319026 93/8510458880000);\n aIF := evalf(8175741561/61894246400);\n \+ aIG := evalf(-1001090259/21276147200);\n aIH := evalf(8806640193 /61894246400);\n aJ1 := evalf(14518436601441766824210206694604636 4310020235219908097908038742509367681150237351046617/50403806133632443 4405621418815050914177039749669901113466725545979005934709318373162500 0);\n aJ6 := evalf(3635214939688450111481159957120817378515341938 68109672094728493311065196649001477430784/1628108634659777308635516942 3199688798095000045677820205676364164254171886004926650353125);\n \+ aJ7 := evalf(58413292893778275235555064118986038732696409498248456266 73751662562560339897412643758080000/2052846253776497296568240228118360 62956350190418583135197279689549257886034848383239181406461);\n a J8 := evalf(-287464764987794127055005184207488070928761374908723524345 7081980275377727798826496320000/20842881681304905053785323178485752465 9930659255874556642094005203785752342472727317294269);\n aJ9 := e valf(17416955149964510656319801255664569979679728598561430427123615200 5690812884940322951476937125286670251745153809456568021048166963956837 /685445453622827933310365641699412371465201830033282059780573908993648 1654450222876394437147475969136825896334423248047628898431591675000); \n aJA := evalf(-853894708326846169589957736946386985125316342067 5582958568675875454339611017515575104/14354153493806302365315360704478 13055139063958202149096114218495279626695531773220597935);\n aJB \+ := evalf(-469009817277721757911480909115149928754525206575822960873392 4606322135886685817045767258740350548012807740346644345856895802223228 3514787068740956612900069575394309324/97363541559920798281998637875340 7685182355929306688346360302330860905414624690753928704348153522205017 42973928090103212530543224683726319193755736877898890235991645046875); \n aJC := evalf(-615491325795731942350892503136971259496509768869 83256/\n 395511992628987990222596397786030931019795385074 32753125);\n aJE := evalf(333854009376180028512997828041383080548 8398924868721692/\n 1827265405945924514828395357771462901 311454679043393194375);\n aJF := evalf(24740544798106579902143994 908049589374118165172193756/\n 24609635096914808280517109 1955752579301206017379581575);\n aJG := evalf(-102430007602902451 01308839448248040090289997109362432/\n 386722837237232701 550983144501896910330466598739342475);\n aJH := evalf(46413517339 782175925522224650595265497362937116771436/\n 31640959410 3190392178077118228824744815836308059462025);\n aJI := evalf(1162 692926074239900957828101802565429259079701124988928/\n 12 339974170024425294945007610924165047817616014319018975);\n aK1 := evalf(174032259933407232185756793740216697586968635733114957221696300 827144914021688945767139/597378443065273403739995755632652935320935999 6087716900346376841232662929888217756000000);\n aK6 := evalf(1401 8472301663235158868796498864848907007753790121452080061641070155515184 712226945724/603003198022139743939080349007395881410925927617697044654 680154231635995777960246309375);\n aK7 := evalf(22927440817519444 3951211706105953706526115710402402382167851762222369859229380436495680 000/760313427324628628358607491895689122060556260809567167397332183515 7699482772162342191903943);\n aK8 := evalf(-105023959208586915826 485995801886562775602252604677803398527549191357527158918043282500/771 9585807890705575476045621661389802219654046513872468225703896436509346 017508419159047);\n aK9 := evalf(20989470413485517753634146656275 3226470302564284464598531874068977766363957066052055301998565555443465 057903259905613828887441584171479/812379796886314587627100019791896143 9587577244838898486288283365850644923792856742393406989601148606608469 729686812500893509252256800000);\n aKA := evalf(-6083536616289413 05952074317103770274928244505781748717906254381751933700628322573893/1 0632706291708372122455822744057874482511584875571474786031248113182419 9669020238562810);\n aKB := evalf(-297721187689447997422895427457 9475632538338759919205374893449779291618462879296913490637760552250330 122528966886544817186291879730119233492373681985901590708279697896507/ 6231266659834931090047912824021809185167077947562805416705934917509794 6535980208251437078281825421121115503313977666056019547663797584844284 00367160185528975103465283000000);\n aKC := evalf(-11429028357620 4315647238402298632371329246775331024273/\n 7031324313404 2309372906026273072165514630290679880450000);\n aKE := evalf(3156 9479801640070227629535741851551804729389786059660093/\n 1 6706426568648452707002471842481946526276157065539594920000);\n aK F := evalf(168445498065373198385098605103286793465143693926499277/\n \+ 1125011890144676949966496420369154648234084650878087200); \n aKG := evalf(-152554638193814233772448685513593008579726033184 05894/\n 386722837237232701550983144501896910330466598739 342475);\n aKH := evalf(14621816049308768659208327809793787775867 65555570732119/\n 101251070113020925496984677833223918341 06761857902784800);\n aKI := evalf(-53708359253079903054171920700 4609860835153385231761024/\n 1233997417002442529494500761 0924165047817616014319018975);\n aL1 := evalf(2042196350915582812 90335986708245541060108896809826868276129824692633593445168706444033/3 2916771352576289593836500820574753578908718345789460471296362186384061 04224119988000000);\n aL6 := evalf(649032957103610406779354755060 81003283622481006939167813131505398477659557768875374228/3322670682979 1373645622794741223854689989796011587388174849722784192187522459033980 3125);\n aL7 := evalf(1845609994005893027789629512419157247874694 226817771993991169151543585088360901901248960000/418948215056428019707 8041281874205366456126335073125208107748766311385429282620066105742989 );\n aL8 := evalf(45669659940663908130204119265727972086379545613 25663546948657148952391205302899947807500/2977554525900700721969331882 6408217808561522750839222377442000743397964620353246759613467);\n \+ aL9 := evalf(-7764543071319295740140150619208722690846789841518971728 3961366536157837027890070068543585802988142591778035434830031375005736 325301909/313346493084721340941881436205445655526949408015214655899690 9298256677327748673314923171267417585891120409752879199107487496425870 4800000);\n aLA := evalf(4893296436443052636497841647987241754913 6823476620200371881911402285295228522640614303/41011867125160863900901 0305842232301468303988057756884604062427222750484437649491599410);\n \+ aLB := evalf(56076562848298739514525995744816551777983600601358562 8221884609138683610786277889564548215769636413805438288255364806807836 451284522887154754482116673829830594832717173/127168707343570022245875 7719188124323503485295420980697286925493369345847673065474519124046567 8657371656225166117891031840724013019915274343674218694256181581843806 7000000);\n aLC := evalf(-979547470674082223368304489585201290276 1487619079103673/\n 6328191882063807843561542364576494896 31672616118924050000);\n aLE := evalf(221850213100744596321792268 502484569203986320366622669277/\n 16706426568648452707002 471842481946526276157065539594920000);\n aLF := evalf(-1523023329 13847075304407139552958807505095035613235667/\n 112501189 0144676949966496420369154648234084650878087200);\n aLG := evalf(1 3793439160201582454610793052834243664608356261932474/\n 3 86722837237232701550983144501896910330466598739342475);\n aLH := \+ evalf(-1684514763599993235987230833924992678885728230327549769/\n \+ 10125107011302092549698467783322391834106761857902784800);\n \+ aLI := evalf(-403890539049085491880662255722496969891452875070067 2/\n 9492287823095711765342313546864742344475089241783860 75);\n aM1 := evalf(336455402177448611510885292579957777188544198 41158467164671950707347356932223376559942032578580727/9635136178472151 6732257379940750473438860645098188982263651239374720369836906738000000 0000000000000);\n aM6 := evalf(-105006506503985551594631930638814 67423847883192199354211700152168866307770984212048031591770120701/7537 5399752767467992385043625924485176365740952212130581835019278954499472 2450307886718750000000000);\n aM7 := evalf(-630982486780445741085 7054544434447077191526216963085543771775519066177096401454705186598493 8941/38322249361120394574526587293129492039342553468224151582526823765 91582400590807632153177390625000);\n aM8 := evalf(520381412777905 1928088375294752728153175206332040296842387128659561733716089967253716 743091117/498037794057464875837164233655573535627074454613798223756497 025576548990065645704461874000000000);\n aM9 := evalf(-2275443569 6302603687267586022022773895785037789686763246770950390979458256509702 130974526149772137452922082047169160695425286417051463814832690133/131 0289994977926754237258096438542167675415684651435239723916671911394342 5472349584505495144517981623562047951107762098215337503640000000000000 00000);\n aMA := evalf(258602117924854189258211211720909115263990 6133019400402304441372193644077861344589370108561953887/53163531458541 8606122791137202893724125579243778573739301562405659120998345101192814 050000000000000);\n aMB := evalf(11171548039137509390000679499747 3539457897416789854868961595381457350255351938766090016293633887972083 9709162841305841333467269915050488971784485224670004533008044957206091 4724120969/31156333299174655450239564120109045925835389737814027083529 6745875489732679901041257185391409127105605577516569888330280097738318 98792422142001835800927644875517326415000000000000000000);\n aMC \+ := evalf(3369474415291231460468513197789409230023641791345301408204182 40067/\n 351566215670211546864530131365360827573151453399 402250000000000000000);\n aME := evalf(-6910065133286924415985355 03700722117420903770249999463979600001407293/\n 584724929 902695844745086514486868128419665497293885822200000000000000000);\n \+ aMF := evalf(-20535105680327720762930102849297047035178433559290489 67351335123019/\n 393754161550636932488273747129204126881 92962780733052000000000000000);\n aMG := evalf(132841849793470773 01135521916420756179479304676310522921089380787/\n 966807 093093081753877457861254742275826166496848356187500000000000);\n \+ aMH := evalf(421686635363958190441252632057683637510774536496681845198 3843669017/\n 5062553505651046274849233891661195917053380 9289513924000000000000000);\n aMI := evalf(2193772361262908084234 8770512218910309432338952975369138907438641/\n 4820302410 16579113083789359801725197180375625559336678710937500000);\n aN1 \+ := evalf(5643912062500191599267275115477039293343932792731275506861130 151558289567280336503718581/161292179627623819009798854020816292536652 719894368356309352174713281899106981879412000000);\n aN6 := evalf (-22884512586415508770498883330027416789336402518158313977016959956234 1172112554404181884/16281086346597773086355169423199688798095000045677 820205676364164254171886004926650353125);\n aN7 := evalf(-3410752 9623447421746844193082489318383201981899779948093161016173808221966814 60036342080000/2052846253776497296568240228118360629563501904185831351 97279689549257886034848383239181406461);\n aN8 := evalf(593692248 1317492404536451745822977033014985649526994431878105229838164423454135 7672500/56332112652175419064284657239150682340521799798885015308674055 46048263576823587224791737);\n aN9 := evalf(-38426526559061717071 1019862876730584827114474291415238390434079182869186510588090523152809 1039746440117776888452299903211460414585972959/21934254515930493865931 7005343811958868864585610650259129783650877967412942407132044621988719 231012378428682701543937524124749810933600000);\n aNA := evalf(38 0650832638516338342696604944978702355108704639869510576594770391109531 679311428209/775900188854394722449478956998817867642737274703864376277 95594339439280839555309221510);\n aNB := evalf(225371845100746589 0866027008215509106679868837844277911442797445928880474773334870985211 7610139854730586080376872085815322612621237817859692001766413212351566 64083820561/6231266659834931090047912824021809185167077947562805416705 9349175097946535980208251437078281825421121115503313977666056019547663 79758484428400367160185528975103465283000000);\n aNC := evalf(611 949674687895785761213466926229373129161406066989771/\n 63 2819188206380784356154236457649489631672616118924050000);\n aNE : = evalf(-5164096801999027097265025376798250439834017501165012419/\n \+ 4331295777057006257371011218421245395701225905880635720000) ;\n aNF := evalf(-41467806819513286621161311250711839540706898556 3794137/\n 7875083231012738649765474942584082537638592556 146610400);\n aNG := evalf(53651149894589040440809906078763604130 13254851402402/\n 386722837237232701550983144501896910330 466598739342475);\n aNH := evalf(10178660940561501926448858745237 9161243090758858579547/\n 1125011890144676949966496420369 154648234084650878087200);\n aNI := evalf(20988885650741540616111 005050619400406019501905100416/\n 45703608037127501092388 9170774969075845096889419222925);\n end if;\n \n xstart := evalf (x0);\n xend:= evalf(xn);\n \n sgn := sign(xend-xstart);\n h : = sgn*hstrt;\n\n eps := evalf(t);\n safety := 0.9;\n pgrow := -0 .125;\n pshrink := -0.14285714285714285714;\n errcontrol := 0.0000 01101996057; #(5/safety)^(1/pgrow)\n\n tiny := Float(1,-3*saveDigits );\n \n xk := evalf(x0);\n yk := evalf(y0);\n \n if ymaxtemp< >0 then\n ymax := abs(evalf(ymaxtemp))\n else\n ymax := ma x(abs(yk),tiny)\n end if;\n \n soln := NULL;\n finished := fal se;\n f1 := fn(xk,yk);\n\n for k from 1 to maxstps do\n if er rcntl=0 then yscale := max(abs(yk),abs(f1*h),tiny)\n elif errcntl =1 then yscale := max(abs(yk),tiny)\n elif errcntl=2 then yscale \+ := abs(ymax)\n else yscale := max(abs(f1*h),tiny) end if;\n \+ \n if abs(h)>=hmx then\n h := sgn*hmx;\n maxsteps ize := true;\n else\n maxstepsize := false;\n end if ;\n if abs(h)<=hmn then\n h := sgn*hmn;\n minstep size := true;\n else\n minstepsize := false;\n end i f;\n if (xk+h-xend)*(xk+h-xstart)>0 then \n h := xend-xk; \n laststep := true;\n else\n laststep := false; \n end if;\n\n # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2; \n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f 3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53 *f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a 61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n \+ t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c 7*h,yk + t*h);\n t := a81*f1 + a84*f4 + a85*f5 + a86*f6 + a87* f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a9 4*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h ,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7*f7 \+ + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA *fA;\n fB := fn(xk + cB*h,yk + t*h);\n t := aC1*f1 + a C4*f4 + aC5*f5 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA\n \+ + aC B*fB;\n fC := fn(xk + h,yk + t*h);\n t := aD1*f1 + aD4 *f4 + aD5*f5 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA\n \+ + aDB* fB;\n fD := fn(xk + h,yk + t*h);\n t := b1*f1 + b6*f6 \+ + b7*f7 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD; \n yo ut := yk + t*h;\n\n # error estimate\n yerr := (e1*f1 \+ + e6*f6 + e7*f7 + e8*f8 + e9*f9 + eA*fA + eB*fB + eC*fC + eD*fD)*h;\n \+ \n err := abs(yerr/yscale)/eps;\n if err<=1.0 \+ or minstepsize then break end if;\n \n # Shrink, but n ot too much.\n if prntflg then\n print(`reducing st ep-size and repeating step`);\n end if;\n htemp := saf ety*h*err^pshrink;\n if h>=0 then\n h := max(htemp, 0.1*h)\n else\n h := min(htemp,0.1*h)\n end if;\n if maxstepsize then maxstepsize := false end if;\n \+ if abs(h)<=hmn then\n h := sgn*hmn;\n minste psize := true;\n end if;\n end do;\n\n if outpt='poi nts' or outpt='rkstep' then\n soln := soln,[xk,yk];\n els e # extra stages needed for interpolation\n t := aE1*f1 + aE6* f6 + aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC\n \+ + aED*f D;\n fE := fn(xk + h,yk + t*h);\n t := aF1*f1 + aF6*f6 + aF7*f7 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + aFC*fC\n \+ + aFE*fE; \n fF := fn(xk + cF*h,yk + t*h);\n t := aG1*f1 + aG6*f 6 + aG7*f7 + aG8*f8 + aG9*f9 + aGA*fA + aGB*fB + aGC*fC\n \+ + aGE*fE + aGF*fF ;\n fG := fn(xk + cG*h,yk + t*h);\n t := aH1*f1 + aH6* f6 + aH7*f7 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + aHC*fC\n \+ + aHE*fE + aHF*fF + aHG*f G;\n fH := fn(xk + cH*h,yk + t*h);\n\n t := aI1*f1 + a I6*f6 + aI7*f7 + aI8*f8 + aI9*f9 + aIA*fA + aIB*fB + aIC*fC\n \+ + aIE*fE + aIF*fF + aIG*fG + aI H*fH;\n fI := fn(xk + cI*h,yk + t*h);\n t := aJ1*f1 + \+ aJ6*f6 + aJ7*f7 + aJ8*f8 + aJ9*f9 + aJA*fA + aJB*fB + aJC*fC\n \+ + aJE*fE + aJF*fF + aJG*fG + aJH*fH + a JI*fI;\n fJ := fn(xk + cJ*h,yk + t*h);\n\n t := aK1*f1 + aK6*f6 + aK7*f7 + aK8*f8 + aK9*f9 + aKA*fA + aKB*fB + aKC*fC\n \+ + aKE*fE + aKF*fF + aKG*fG + aKH*fH \+ + aKI*fI;\n fK := fn(xk + cK*h,yk + t*h);\n t := aL1*f 1 + aL6*f6 + aL7*f7 + aL8*f8 + aL9*f9 + aLA*fA + aLB*fB + aLC*fC\n \+ + aLE*fE + aLF*fF + aLG*fG + aLH*fH + aLI*fI;\n fL := fn(xk + cL*h,yk + t*h);\n t := aM1* f1 + aM6*f6 + aM7*f7 + aM8*f8 + aM9*f9 + aMA*fA + aMB*fB + aMC*fC\n \+ + aME*fE + aMF*fF + aMG*fG + aMH*f H + aMI*fI;\n fM := fn(xk + cM*h,yk + t*h);\n t := aN1 *f1 + aN6*f6 + aN7*f7 + aN8*f8 + aN9*f9 + aNA*fA + aNB*fB + aNC*fC\n \+ + aNE*fE + aNF*fF + aNG*fG + aNH* fH + aNI*fI;\n fN := fn(xk + cN*h,yk + t*h);\n soln := soln,[xk,yk,f1,f6,f7,f8,f9,fA,fB,fC,fD,fE,fJ,fK,fL,fM,fN];\n end if;\n \n if err>errcontrol then\n hnext := safety*h *err^pgrow;\n inc := false;\n else\n hnext := 5*h ;\n inc := true;\n end if;\n \n xk := xk + h;\n \+ yk := yout;\n f1 := fn(xk,yk);\n if prntflg then\n \+ print(`abs err estimate -> `,evalf(abs(yerr),5),`abs err bound -> `,ev alf(abs(yscale)*eps,5));\n print('step',k,` `,h,` `,[xk,yk ]);\n if laststep then\n print(`last step`);\n \+ elif inc then\n print(`increasing step-size by a factor of 5`)\n elif maxstepsize then\n print(`used maxim um step-size`)\n elif not minstepsize then\n print( `using error to adjust step-size`)\n else \n print( `used minimum step-size`)\n end if;\n print(``);\n \+ end if;\n \n if (xk-xend)*(xend-xstart)>=0 then\n \+ finished := true;\n break;\n end if;\n\n if abs(yk)> ymax then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n \+ if not finished and k>=maxstps then\n error \"reached maximum nu mber of steps before reaching end of interval\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt='rkstep' then\n eqns := \{SOLN_=[s oln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,c9_=c9,cB_=cB,\n a31_=a3 1,a71_=a71,a74_=a74,a75_=a75,a76_=a76,a81_=a81,a84_=a84,\n a85 _=a85,a86_=a86,a87_=a87,a91_=a91,a94_=a94,a95_=a95,a96_=a96,\n \+ a97_=a97,a98_=a98,aA1_=aA1,aA4_=aA4,aA5_=aA5,aA6_=aA6,aA7_=aA7,\n \+ aA8_=aA8,aA9_=aA9,aB1_=aB1,aB4_=aB4,aB5_=aB5,aB6_=aB6,aB7_=aB7,\n aB8_=aB8,aB9_=aB9,aBA_=aBA,aC1_=aC1,aC4_=aC4,aC5_=aC5,aC6_=aC 6,\n aC7_=aC7,aC8_=aC8,aC9_=aC9,aCA_=aCA,aCB_=aCB,aD1_=aD1,aD4 _=aD4,\n aD5_=aD5,aD6_=aD6,aD7_=aD7,aD8_=aD8,aD9_=aD9,aDA_=aDA ,aDB_=aDB,\n aDC_=aDC,b1_=b1,b6_=b6,b7_=b7,b8_=b8,b9_=b9,bA_=b A,bB_=bB,bC_=bC\};\n return subs(eqns,eval(rk78step));\n elif o utpt='rkinterp' then\n d12 := evalf(-6835010514674764501402199958 6028946209/\n 4542121830740985378747172581752156400);\n \+ d62 := evalf(70762831921707119511917139475791872/\n 1 746624468506924572468474783370219775);\n d72 := evalf(-1588357857 3596636603016507305984000000000000/\n 9084406046358230243 4424622016601038326404491);\n d82 := evalf(-347104804910181725977 87408952000000000000/\n 675311367694875004572783390437243 77296657);\n d92 := evalf(467758266138070956441485235595515838513 992912421160961502842355557804366203666231409787519781/842673603280422 8759795504099999668653809079267184860535763754733338929488365484991062 01685360);\n dA2 := evalf(-39016938664319874498014098862531200000 /\n 80844978468947862569396567494805027289);\n dB2 : = evalf(-1646239073025743723679962495614044122431390126580423804795631 4782553757899856868974421515864048833003831695696189170835154699198718 517/142440967201835292751504902767159720122791741366443775587422865680 306933697449138255679389196719369091419157216303830249769788156232050) ;\n dC2 := evalf(1363997748001176193669261032726297/7840630409915 984070278195345982350);\n dD2 := evalf(-4557/24949);\n dE2 : = evalf(34457089/610976061);\n dJ2 := evalf(-658459375/275736348) ;\n dK2 := evalf(86249750/15493329);\n dL2 := evalf(14532025 0/318024903);\n dM2 := evalf(16600000000000000000/811784567077890 57);\n dN2 := evalf(-129626500/673623);\n d13 := evalf(45551 85528077567963044906602035807081629/\n 408790964766688684 08724553235769407600);\n d63 := evalf(-86232500048591285606506250 902483533824/\n 110037341515936248065513911352323845825); \n d73 := evalf(600033947774760140952154596498157568000000000000/ \n 177418450085376236654431286798421827851467970923);\n \+ d83 := evalf(5062771511618507746048706362856000000000000/\n \+ 509221274559108449394071799816191926101819);\n d93 := eval f(-2524357717128272360212855392155971690220444321790599663241839380843 882220296557031995363304966691/235105935315237982398294564389990755441 273311554457608947808757060156132725397031250630270215440);\n dA3 := evalf(1285041754073244898789432094794979200000/\n 137 654963339019333564107668977640992411);\n dB3 := evalf(22290313068 7073550714903022210794784276310483196518530730338961842485058130069153 8518715429376963313210573363135979593690462622329711171/99708677041284 7049260534319370118040859542189565106429111960059762148535882143967789 755724377035583639934100514126811748388517093624350);\n dC3 := ev alf(-5725304769582270340915963781477924641/\n 17014167989 51768543250368390078169950);\n dD3 := evalf(264439/74847);\n \+ dE3 := evalf(-42087304057/38491491843);\n dJ3 := evalf(542694548 75/1240813566);\n dK3 := evalf(-96984158750/976079727);\n dL 3 := evalf(-25132714750/2862224127);\n dM3 := evalf(-134686000000 00000000000/5114242772590710591);\n dN3 := evalf(109239128500/424 38249);\n d14 := evalf(-406720372684047339052092360379053865997/ \n 934379348038145563627989788246157888);\n d64 := e valf(3858286343731143830807030483837329408/\n 62878480866 2492846088650922013279119);\n d74 := evalf(-671180467100542875456 216286848486400000000000000/\n 25345492869339462379204469 542631689693066852989);\n d84 := evalf(-1466734741248586655835254 199527950000000000000/\n 18841187158687012627580656593199 101265767303);\n d94 := evalf(15812568186797488682504408389306412 920965530404397346303603585829631576599514936952807867106196705/188084 7482521903859186356515119926043530186492435660871582470056481249061803 17625000504216172352);\n dA4 := evalf(-53184177884973119250216395 647091420000000/\n 72760480622053076312456910745324524560 1);\n dB4 := evalf(-398932701531435602716853994008837000421456223 8641664997929485456804514593581802549679708557592622220032476509029927 74252619789543139403/2279055475229364684024078444274555521964667861863 1004093987658508849109391591862120908702271475099054627065154608612839 963166104997128);\n dC4 := evalf(10246654193595502494886526491402 77113/\n 38889526833183280988579848916072456);\n dD4 := evalf(-8282225/299388);\n dE4 := evalf(330827906450/384914918 43);\n dJ4 := evalf(-776430341375/2481627132);\n dK4 := eval f(666555964750/976079727);\n dL4 := evalf(27808258250/408889161); \n dM4 := evalf(65799800000000000000000/5114242772590710591);\n \+ dN4 := evalf(-541991373500/42438249);\n d15 := evalf(76960040 8784764847186603958741000759545/\n 8175819295333773681744 91064715388152);\n d65 := evalf(-14403660304063610455490230648136 990720/\n 628784808662492846088650922013279119);\n d 75 := evalf(2505634519984869424125854027518976000000000000000/\n \+ 25345492869339462379204469542631689693066852989);\n d85 : = evalf(5475578297458116727300963762178000000000000000/\n \+ 18841187158687012627580656593199101265767303);\n d95 := evalf(-7 3788866483280693378644295915192623525582381934438141677073381589243638 76862834800489398124545275/2351059353152379823982945643899907554412733 1155445760894780875706015613272539703125063027021544);\n dA5 := e valf(198545873364401942001991099856912800000000/\n 727604 806220530763124569107453245245601);\n dB5 := evalf(18616072671671 0446172411529521946566533012037611513874700007789028520093813793625857 705672226071928770928315130741340447717118179057065/284881934403670585 5030098055343194402455834827328875511748457313606138673948982765113587 783934387381828383144326076604995395763124641);\n dC5 := evalf(-4 78156988327078987891835395361274115/\n 486119085414791012 3572481114509057);\n dD5 := evalf(7729750/74847);\n dE5 := e valf(-1243468249000/38491491843);\n dJ5 := evalf(621495622750/620 406783);\n dK5 := evalf(-2013457765250/976079727);\n dL5 := \+ evalf(-237763291750/954074709);\n dM5 := evalf(-15912700000000000 0000000/5114242772590710591);\n dN5 := evalf(1320672989500/424382 49);\n d16 := evalf(-920612165972109143515580545187696490875/\n \+ 817581929533377368174491064715388152);\n d66 := evalf (188891107791008520632617525536186368000/\n 4401493660637 449922620556454092953833);\n d76 := evalf(-3285915317412804197249 0399489254400000000000000000/\n 1774184500853762366544312 86798421827851467970923);\n d86 := evalf(-10258186645113406365953 243181350000000000000000/\n 18841187158687012627580656593 199101265767303);\n d96 := evalf(13823927329616204159118894016260 334156083183393875381987271501758002968322626207374699970450670625/235 1059353152379823982945643899907554412733115544576089478087570601561327 2539703125063027021544);\n dA6 := evalf(-260375135038102388283118 2807156820000000000/\n 5093233643543715341871983752172716 719207);\n dB6 := evalf(-2441331241807890557966252625664196256831 4970067120084201942384377353467136436485799881369852151271166076573814 68913775285038277229314125/1994173540825694098521068638740236081719084 3791302128582239201195242970717642879355795114487540711672798682010282 536234967770341872487);\n dC6 := evalf(62706007581720738903406305 81005615375/\n 34028335979035370865007367801563399);\n \+ dD6 := evalf(-14481250/74847);\n dE6 := evalf(2354935270000/38 491491843);\n dJ6 := evalf(-943549731250/620406783);\n dK6 : = evalf(2957437475000/976079727);\n dL6 := evalf(1299457150000/28 62224127);\n dM6 := evalf(202375000000000000000000/51142427725907 10591);\n dN6 := evalf(-1685964775000/42438249);\n d17 := ev alf(995389418070200667339827014021779496525/\n 1430768376 683410394305359363251929266);\n d67 := evalf(-1183793697890235876 738071888133731123200/\n 30810455624462149458343895178650 676831);\n d77 := evalf(20593059620668039355810901722208256000000 0000000000/\n 1241929150597633656581019007588952794960275 796461);\n d87 := evalf(91841097870622573006186481033200000000000 00000/\n 18841187158687012627580656593199101265767303);\n d97 := evalf(-21658878287428892679513771712485224451192564676929 828092444111213596191456537616750813911407002375/411435386801666469197 0154876824838220222282952203008156586653248552732322694448046886029728 7702);\n dA7 := evalf(1631789063815829589892750941137796800000000 0/\n 35652635504806007393103886265209017034449);\n d B7 := evalf(1529999253174105188352022491443446741743582293269906425030 4919079269496141336509408844082665046101784564726501870437267224421154 938033900/139592147857798586896474804711816525720335906539114900075674 4083667007950235001554905658014127849817095907740719777536447743923931 07409);\n dC7 := evalf(-39298290672967220779826598420658756900/\n 238198351853247596055051574610943793);\n dD7 := eva lf(12965000/74847);\n dE7 := evalf(-306265310000/5498784549);\n \+ dJ7 := evalf(672258500000/620406783);\n dK7 := evalf(-2983438 75000/139439961);\n dL7 := evalf(-1119859625000/2862224127);\n \+ dM7 := evalf(-18500000000000000000000/730606110370101513);\n d N7 := evalf(154382750000/6062607);\n d18 := evalf(-35371502866848 895639448196396098365625/\n 20439548238334434204362276617 8847038);\n d68 := evalf(57066799936860580251546080222412800000/ \n 4401493660637449922620556454092953833);\n d78 := \+ evalf(-9927236608497897876885317066240000000000000000000/\n \+ 177418450085376236654431286798421827851467970923);\n d88 := ev alf(-3099150043840908267659590085000000000000000000/\n 18 841187158687012627580656593199101265767303);\n d98 := evalf(10441 0327262962267062831525802570499668301989379723428906884454365581331741 8897837968275713796875/58776483828809495599573641097497688860318327888 61440223695218926503903318134925781265756755386);\n dA8 := evalf( -786631827909674889072864896422000000000000/\n 5093233643 543715341871983752172716719207);\n dB8 := evalf(-7375623087032901 9878134520412815596883126797785861281576865209599255187723373068881816 8273478890367555183498933206578635963225749037500/19941735408256940985 2106863874023608171908437913021285822392011952429707176428793557951144 87540711672798682010282536234967770341872487);\n dC8 := evalf(189 4441316668300268985084767675412500/\n 3402833597903537086 5007367801563399);\n dD8 := evalf(-4375000/74847);\n dE8 := \+ evalf(741478750000/38491491843);\n dJ8 := evalf(-181750000000/620 406783);\n dK8 := evalf(569421875000/976079727);\n dL8 := ev alf(120953125000/954074709);\n dM8 := evalf(328750000000000000000 00/5114242772590710591);\n dN8 := evalf(-274468750000/42438249); \n eqns := \{SOLN_=[soln],\n d12_=d12,d62_=d62,d72_=d72,d8 2_=d82,d92_=d92,dA2_=dA2,dB2_=dB2,dC2_=dC2,\n dD2_=dD2,dE2_=dE2 ,dJ2_=dJ2,dK2_=dK2,dL2_=dL2,dM2_=dM2,dN2_=dN2,\n d13_=d13,d63_= d63,d73_=d73,d83_=d83,d93_=d93,dA3_=dA3,dB3_=dB3,dC3_=dC3,\n dD 3_=dD3,dE3_=dE3,dJ3_=dJ3,dK3_=dK3,dL3_=dL3,dM3_=dM3,dN3_=dN3,\n \+ d14_=d14,d64_=d64,d74_=d74,d84_=d84,d94_=d94,dA4_=dA4,dB4_=dB4,dC4_=d C4,\n dD4_=dD4,dE4_=dE4,dJ4_=dJ4,dK4_=dK4,dL4_=dL4,dM4_=dM4,dN4 _=dN4,\n d15_=d15,d65_=d65,d75_=d75,d85_=d85,d95_=d95,dA5_=dA5, dB5_=dB5,dC5_=dC5,\n dD5_=dD5,dE5_=dE5,dJ5_=dJ5,dK5_=dK5,dL5_=d L5,dM5_=dM5,dN5_=dN5,\n d16_=d16,d66_=d66,d76_=d76,d86_=d86,d96 _=d96,dA6_=dA6,dB6_=dB6,dC6_=dC6,\n dD6_=dD6,dE6_=dE6,dJ6_=dJ6, dK6_=dK6,dL6_=dL6,dM6_=dM6,dN6_=dN6,\n d17_=d17,d67_=d67,d77_=d 77,d87_=d87,d97_=d97,dA7_=dA7,dB7_=dB7,dC7_=dC7,\n dD7_=dD7,dE7 _=dE7,dJ7_=dJ7,dK7_=dK7,dL7_=dL7,dM7_=dM7,dN7_=dN7,\n d18_=d18, d68_=d68,d78_=d78,d88_=d88,d98_=d98,dA8_=dA8,dB8_=dB8,dC8_=dC8,\n \+ dD8_=dD8,dE8_=dE8,dJ8_=dJ8,dK8_=dK8,dL8_=dL8,dM8_=dM8,dN8_=dN8\};\n return subs(eqns,eval(rk78interp));\n else\n return evalf [saveDigits]([soln]);\n end if;\nend proc: # of rungk78" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "rungk78d : implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 15030 "rungk78d := proc(fxy,eqn1,eqn2) \n local \+ ytemp,fn,soln,xk,yk,k,\n xend,xstart,h,c2,c3,c4,c5,c6,c7,c8,c9,cA,a2 1,a31,\n a32,a41,a42,a43,a51,a52,a53,a54,a61,a62,a63,a64,a65,\n a7 1,a72,a73,a74,a75,a76,a81,a82,a83,a84,a85,a86,a87,\n a91,a94,a95,a96 ,a97,a98,aA1,aA4,aA5,aA6,aA7,aA8,aA9,\n aB1,aB4,aB5,aB6,aB7,aB8,aB9, aBA,aC1,aC6,aC7,aC8,aC9,\n aCA,aD1,aD4,aD5,aD6,aD7,aD8,aD9,aDA,f1,f2 ,f3,f4,f5,\n f6,f7,f8,f9,fA,fB,fC,fD,b6,b7,b8,b9,bA,bB,bC,bD,\n e1 ,eB,eC,eD,yout,yerr,rs,hmx,hmn,hstrt,temp,sgn,eqns,\n maxstps,tiny,y scale,err,htemp,hnext,saveDigits,eps,\n Options,j,prntflg,t,tt,errcn tl,ymax,ymaxtemp,x,y,errc,\n x0,y0,xn,f,outpt,minstepsize,ftd,inc,rk 78step,finished, \n maxstepsize,laststep,safety,pgrow,pshrink,errc ontrol;\n\nrk78step := proc(x_rk78step::realcons)\n local c2,c3,c4,c 5,c6,c7,c8,c9,cA,a21,a31,a32,a41,a43,\n a51,a53,a54,a61,a64,a65,a71, a74,a75,a76,a81,a85,a86,\n a87,a91,a94,a95,a96,a97,a98,aA1,aA4,aA5,a A6,aA7,aA8,\n aA9,aC1,aC6,aC7,aC8,aC9,aCA,aD1,aD4,aD5,aD6,aD7,aD8,\n aD9,aDA,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fC,fD,b6,b7,b8,\n b9,bA,bC, bD,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,saveDigits;\n options `Copyrig ht 2004 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits := D igits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # proc edure to evaluate the slope field\n fn := proc(X_,Y_)\n local v al; \n val := traperror(evalf(FXY_));\n if val=lasterror or \+ not type(val,numeric) then\n error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n val; \n end proc;\n\n xx := evalf(x_rk78step);\n n := nops(data); \n if (data[1,1]data[n,1] or xxdata[1,1])) then\n \+ error \"independent variable is outside the interpolation interva l: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := c2 _; c3 := c3_; c4 := c4_; c5 := c5_; c6 := 0.5; c7 := c7_;\n c8 := c4 ; c9 := c9_; cA := cA_; a21 := c2; a31 := a31_; a32 := a32_;\n a41 : = a41_; a43 := 0.125; a51 := c5; a53 := -1.5625; a54 := 1.5625;\n a6 1 := 0.05; a64 := 0.25; a65 := 0.2; a71 := a71_; a74 := a74_;\n a75 \+ := a75_; a76 := a76_; a81 := a81_; a85 := a85_; a86 := a86_; a87 := a8 7_;\n a91 := 2.; a94 := a94_; a95 := a95_; a96 := a96_; a97 := a97_; a98 := 3.;\n aA1 := aA1_; aA4 := aA4_; aA5 := aA5_; aA6 := aA6_; aA 7 := aA7_; aA8 := aA8_;\n aA9 := -a32; aC1 := aC1_; aC6 := aC6_; aC7 := -aC1; aC8 := aC8_; aC9 := -aC8; \n aCA := -aC6; aD1 := aD1_; aD4 := aD4_; aD5 := aD5_; aD6 := aD6_; aD7 := aD7_;\n aD8 := aD8_; aD9 \+ := aD9_; aDA := aDA_; b6 := b6_; b7 := b7_; b8 := b7;\n b9 := b9_; b A := b9; bC := bC_; bD := bC;\n\n # Perform a binary search for the \+ interval containing x.\n n := nops(data);\n jF := 0;\n jS := n+1 ;\n\n if data[1,1]1 do\n j M := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM else j S := jM end if;\n end do;\n if jM = n then jF := n-1; jS := \+ n end if;\n else\n while jS-jF>1 do\n jM := trunc((jF+jS )/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data needed from the list.\n xk := data[jF,1] ;\n yk := data[jF,2];\n\n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2*h,y k + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h); \n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := \+ a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a 61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a7 1*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n \+ t := a81*f1 + a85*f5 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t *h);\n t := a91*f1 + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n \+ f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6 *f6 + aA7*f7 +\n aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + \+ t*h);\n t := aC1*f1 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 +\n \+ aCA*fA;\n fC := fn(xk,yk + t*h);\n t := aD1*f1 + aD4*f4 + aD5*f5 + aD6*f6 + aD7*f7 +\n aD8*f8 + aD9*f9 + aDA*fA + fC;\n fD := \+ fn(xk + h,yk + t*h);\n\n # Calculate the intermediate y value.\n t := b6*f6 +b7*f7 + b8*f8 + b9*f9 + bA*fA + bC*fC + bD*fD;\n ys := yk + t*h;\n \n Digits := saveDigits;\n evalf(ys);\nend proc: # of \+ rk78step \n\n # start of main procedure rungk78\n x := lhs(eqn1); \n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs);\n y0 := rhs(eqn2);\n\n # Get the options.\n # Set the \+ default values to start with.\n maxstps := 2000;\n t := Float(1,-D igits);\n hmx := 0.5;\n hstrt := evalf(0.1*10^(-ceil(Digits/10))); \n hmn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ymaxtemp : = 0;\n outpt := 'rkstep';\n prntflg := false;\n Options := [];\n if nargs>3 then\n Options:=[args[4..nargs]];\n if not typ e(Options,list(equation)) then\n error \"each optional argumen t must be an equation\"\n end if;\n if hasoption(Options,'ma xsteps','maxstps','Options') then\n if not type(maxstps,posint ) then\n error \"\\\"maxsteps\\\" must be a positive intege r\"\n end if;\n end if;\n if hasoption(Options,'tole rance','t','Options') then \n tt := evalf(t); \n if no t type(tt,float) or \n tt>Float(1,-iquo(Digits,2)) or tthmx) or evalf(hstrtt rue then prntflg := false end if; \n end if;\n if nops(Optio ns)>0 then\n error \"%1 is not a valid option for %2\",op(1,Op tions), procname;\n end if;\n end if;\n\n if prntflg then\n \+ print(`method: Fehlberg 13 stage, order 7-8`);\n print(`an em bedded order 7 scheme provides error control`);\n print(``);\n \+ end if;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Dig its)),Digits+5);\n \n # procedure to evaluate the slope field\n \+ fn := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\},\n proc(X_,Y_)\n lo cal val; \n val := traperror(evalf(FXY_));\n if val=lasterro r or not type(val,numeric) then\n error \"evaluation of slope \+ field failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n \+ val;\n end proc);\n\n ## coefficients by Fehlberg\n # nodes\n c2 := evalf(2/27);\n c3 := evalf(1/9);\n c4 := evalf(1/6);\n \+ c5 := evalf(5/12);\n c6 := 0.5;\n c7 := evalf(5/6);\n c8 := c4; \n c9 := evalf(2/3);\n cA := evalf(1/3);\n\n # linking coefficie nts\n a21 := c2;\n a31 := evalf(1/36);\n a32 := evalf(1/12);\n \+ a41 := evalf(1/24);\n a43 := 0.125;\n a51 := c5;\n a53 := -1.56 25;\n a54 := 1.5625;\n a61 := 0.05;\n a64 := 0.25;\n a65 := 0. 2;\n a71 := evalf(-25/108);\n a74 := evalf(125/108);\n a75 := ev alf(-65/27);\n a76 := evalf(125/54);\n a81 := evalf(31/300);\n a 85 := evalf(61/225);\n a86 := evalf(-2/9);\n a87 := evalf(13/900); \n a91 := 2;\n a94 := evalf(-53/6);\n a95 := evalf(704/45);\n \+ a96 := evalf(-107/9);\n a97 := evalf(67/90);\n a98 := 3;\n aA1 : = evalf(-91/108);\n aA4 := evalf(23/108);\n aA5 := evalf(-976/135) ;\n aA6 := evalf(311/54);\n aA7 := evalf(-19/60);\n aA8 := evalf (17/6);\n aA9 := -a32;\n aB1 := evalf(2383/4100);\n aB4 := evalf (-341/164);\n aB5 := evalf(4496/1025);\n aB6 := evalf(-301/82);\n \+ aB7 := evalf(2133/4100);\n aB8 := evalf(45/82);\n aB9 := evalf(4 5/164);\n aBA := evalf(18/41);\n aC1 := evalf(3/205);\n aC6 := e valf(-6/41);\n aC7 := -aC1;\n aC8 := evalf(-3/41);\n aC9 := -aC8 ;\n aCA := -aC6;\n aD1 := evalf(-1777/4100);\n aD4 := evalf(-341 /164);\n aD5 := evalf(4496/1025);\n aD6 := evalf(-289/82);\n aD7 := evalf(2193/4100);\n aD8 := evalf(51/82);\n aD9 := evalf(33/164 );\n aDA := evalf(12/41);\n\n # weights\n b6 := evalf(34/105);\n b7 := evalf(9/35);\n b8 := b7;\n b9 := evalf(9/280);\n bA := \+ b9;\n bC := evalf(41/840);\n bD := bC;\n\n # error coefficients \n e1 := -bC;\n eB := e1;\n eC := bC;\n eD := bC;\n \n xst art := evalf(x0);\n xend:= evalf(xn);\n \n sgn := sign(xend-xsta rt);\n h := sgn*hstrt;\n\n eps := evalf(t);\n safety := 0.9;\n \+ pgrow := -0.125;\n pshrink := -0.14285714285714285714;\n errcontr ol := 0.000001101996057; #(5/safety)^(1/pgrow)\n\n tiny := Float(1,- 3*saveDigits);\n \n xk := evalf(x0);\n yk := evalf(y0);\n \n \+ if ymaxtemp<>0 then\n ymax := abs(evalf(ymaxtemp))\n else\n \+ ymax := max(abs(yk),tiny)\n end if;\n \n soln := NULL;\n fin ished := false;\n f1 := fn(xk,yk);\n\n for k from 1 to maxstps do \n if errcntl=0 then yscale := max(abs(yk),abs(f1*h),tiny)\n \+ elif errcntl=1 then yscale := max(abs(yk),tiny)\n elif errcntl=2 then yscale := abs(ymax)\n else yscale := max(abs(f1*h),tiny) en d if;\n \n if abs(h)>=hmx then\n h := sgn*hmx;\n \+ maxstepsize := true;\n else\n maxstepsize := false; \n end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n \+ minstepsize := true;\n else\n minstepsize := false ;\n end if;\n if (xk+h-xend)*(xk+h-xstart)>0 then \n \+ h := xend-xk;\n laststep := true;\n else\n lasts tep := false;\n end if;\n\n # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31 *f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a 41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n \+ t := a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk \+ + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a85*f5 + a86*f6 + \+ a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 \+ + a94*f4 + a95*f5 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + \+ c9*h,yk + t*h);\n t := aA1*f1 + aA4*f4 + aA5*f5 + aA6*f6 + aA7 *f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h);\n \+ t := aB1*f1 + aB4*f4 + aB5*f5 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + h,yk + t*h);\n t := aC1*f1 + \+ aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA;\n fC := fn(xk,yk + t*h);\n t := aD1*f1 + aD4*f4 + aD5*f5 + aD6*f6 + aD7*f7 + aD8 *f8 + aD9*f9 + aDA*fA + fC;\n fD := fn(xk + h,yk + t*h);\n \n \+ yout := yk + (b6*f6 +b7*f7 + b8*f8 + b9*f9 + bA*fA + bC*fC + b D*fD)*h;\n\n # error estimate\n yerr := (e1*f1 + eB*fB + eC*fC + eD*fD)*h;\n \n err := abs(yerr/yscale)/eps; \n if err<=1.0 or minstepsize then break end if;\n \n \+ # Shrink, but not too much.\n if prntflg then\n \+ print(`reducing step-size and repeating step`);\n end if; \n htemp := safety*h*err^pshrink;\n if h>=0 then\n \+ h := max(htemp,0.1*h)\n else\n h := min(hte mp,0.1*h)\n end if;\n if maxstepsize then maxstepsize \+ := false end if;\n if abs(h)<=hmn then\n h := sgn*h mn;\n minstepsize := true;\n end if;\n end do; \n\n soln := soln,[xk,yk];\n \n if err>errcontrol then \n hnext := safety*h*err^pgrow;\n inc := false;\n \+ else\n hnext := 5*h;\n inc := true;\n end if;\n \+ \n xk := xk + h;\n yk := yout;\n f1 := fn(xk,yk);\n \+ if prntflg then\n print(`abs err estimate -> `,evalf(abs(yer r),5),`abs err bound -> `,evalf(abs(yscale)*eps,5));\n print(' step',k,` `,h,` `,[xk,yk]);\n if laststep then\n \+ print(`last step`);\n elif inc then\n print(`incr easing step-size by a factor of 5`)\n elif maxstepsize then\n \+ print(`used maximum step-size`)\n elif not minsteps ize then\n print(`using error to adjust step-size`)\n \+ else \n print(`used minimum step-size`)\n end if ;\n print(``);\n end if;\n \n if (xk-xend)*(xen d-xstart)>=0 then\n finished := true;\n break;\n \+ end if;\n\n if abs(yk)>ymax then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n if not finished and k>=maxstps then\n \+ error \"reached maximum number of steps before reaching end of inter val\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt='rkstep' th en\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c3_=c3,c4_= c4,\n c5_=c5,c7_=c7,c9_=c9,cA_=cA,a31_=a31,a32_=a32,a41_=a41, \n a71_=a71,a74_=a74,a75_=a75,a76_=a76,a81_=a81,a85_=a85,\n \+ a86_=a86,a87_=a87,a94_=a94,a95_=a95,a96_=a96,a97_=a97,\n \+ aA1_=aA1,aA4_=aA4,aA5_=aA5,aA6_=aA6,aA7_=aA7,aA8_=aA8,\n aB1_ =aB1,aB4_=aB4,aB5_=aB5,aB6_=aB6,aB7_=aB7,aB8_=aB8,\n aB9_=aB9, aBA_=aBA,aC1_=aC1,aC6_=aC6,aC8_=aC8,aD1_=aD1,\n aD4_=aD4,aD5_= aD5,aD6_=aD6,aD7_=aD7,aD8_=aD8,aD9_=aD9,\n aDA_=aDA,b6_=b6,b7_ =b7,b9_=b9,bC_=bC\};\n return subs(eqns,eval(rk78step));\n else \n return evalf[saveDigits]([soln]);\n end if;\nend proc: # of \+ rungk78c" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 23 "rungk89: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 188317 "rungk89 := proc(fxy,eq n1,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,SQRT6,c2,c3,c4 ,c5,c6,c7,c8,c9,cA,cB,cC,cD,\n cE,cI,cJ,cK,cL,cM,cN,cO,cP,cQ,cR,cS,a 21,a31,a32,a41,a42,a43,a51,a53,a54,a61,a64,a65,\n a71,a74,a75,a76,a8 1,a86,a87,a91,a96,a97,a98,aA1,aA6,aA7,aA8,aA9,aB1,aB6,aB7,aB8,aB9,\n \+ aBA,aC1,aC6,aC7,aC8,aC9,aCA,aCB,aD1,aD6,aD7,aD8,aD9,aDA,aDB,aDC,aE1,a E6,aE7,aE8,aE9,\n aEA,aEB,aEC,aED,aF1,aF6,aF7,aF8,aF9,aFA,aFB,aFC,aF D,aFE,aG1,aG6,aG7,aG8,aG9,aGA,aGB,\n aGC,aGD,aGE,aH1,aH6,aH7,aH8,aH9 ,aHA,aHB,aHC,aHD,aHE,aHG,aHF,aI1,aI8,aI9,aIA,aIB,aIC,\n aID,aIE,aIF, aIH,aJ1,aJ8,aJ9,aJA,aJB,aJC,aJD,aJE,aJF,aJH,aJI,aK1,aK8,aK9,aKA,aKB,aK C,\n aKD,aKE,aKF,aKH,aKI,aKJ,aL1,aL8,aL9,aLA,aLB,aLC,aLD,aLE,aLF,aLH ,aLI,aLJ,aLK,aM1,aM8,\n aM9,aMA,aMB,aMC,aMD,aME,aMF,aMH,aMI,aMJ,aMK, aML,aN1,aN8,aN9,aNA,aNB,aNC,aND,aNE,aNF,\n aNH,aNI,aNJ,aNK,aNL,aO1,a O8,aO9,aOA,aOB,aOC,aOD,aOE,aOF,aOH,aOI,aOJ,aOK,aOL,aP1,aP8,\n aP9,aP A,aPB,aPC,aPD,aPE,aPF,aPH,aPI,aPJ,aPK,aPL,aQ1,aQ8,aQ9,aQA,aQB,aQC,aQD, aQE,aQF,\n aQH,aQI,aQJ,aQK,aQL,aR1,aR8,aR9,aRA,aRB,aRC,aRD,aRE,aRF,a RH,aRI,aRJ,aRK,aRL,aRM,aS1,\n aS8,aS9,aSA,aSB,aSC,aSD,aSE,aSF,aSH,aS I,aSJ,aSK,aSL,aSM,aSN,b1,b8,b9,bA,bB,bC,bD,bE,\n bF,f1,f2,f3,f4,f5,f 6,f7,f8,f9,fA,fB,fC,fD,fE,fF,fG,fH,fI,fJ,fK,fL,fM,fN,fO,fP,fQ,fR,\n \+ fS,e1,e8,e9,eA,eB,eC,eD,eE,eF,eG,eH,d12,d82,d92,dA2,dB2,dC2,dD2,dE2,dF 2,dH2,dI2,dJ2,\n dK2,dL2,dM2,dN2,dO2,dP2,dQ2,dR2,dS2,d13,d83,d93,dA3 ,dB3,dC3,dD3,dE3,dF3,dH3,dI3,dJ3,\n dK3,dL3,dM3,dN3,dO3,dP3,dQ3,dR3, dS3,d14,d84,d94,dA4,dB4,dC4,dD4,dE4,dF4,dH4,dI4,dJ4,\n dK4,dL4,dM4,d N4,dO4,dP4,dQ4,dR4,dS4,d15,d85,d95,dA5,dB5,dC5,dD5,dE5,dF5,dH5,dI5,dJ5 ,\n dK5,dL5,dM5,dN5,dO5,dP5,dQ5,dR5,dS5,d16,d86,d96,dA6,dB6,dC6,dD6, dE6,dF6,dH6,dI6,dJ6,\n dK6,dL6,dM6,dN6,dO6,dP6,dQ6,dR6,dS6,d17,d87,d 97,dA7,dB7,dC7,dD7,dE7,dF7,dH7,dI7,dJ7,\n dK7,dL7,dM7,dN7,dO7,dP7,dQ 7,dR7,dS7,d18,d88,d98,dA8,dB8,dC8,dD8,dE8,dF8,dH8,dI8,dJ8,\n dK8,dL8 ,dM8,dN8,dO8,dP8,dQ8,dR8,dS8,d19,d89,d99,dA9,dB9,dC9,dD9,dE9,dF9,dH9,d I9,dJ9,\n dK9,dL9,dM9,dN9,dO9,dP9,dQ9,dR9,dS9,yout,yerr,rs,hmx,hmn,h strt,temp,sgn,maxstps,tiny,\n yscale,err,htemp,hnext,saveDigits,eps, Options,j,prntflg,t,tt,errcntl,ymax,ymaxtemp,\n x,y,errc,x0,y0,xn,f, outpt,minstepsize,ftd,inc,rk89step,rk89interp1,rk89interp2,\n finish ed,maxstepsize,laststep,safety,pgrow,pshrink,errcontrol,eqns;\n\n## lo wer precision interpolation procedure\nrk89interp1 := proc(x_rk89inter p::realcons)\n local b1,b8,b9,bA,bB,bC,bD,bE,bF,bH,bI,bJ,bK,bL,bM,bN ,bO,bP,bQ,xF,xS,yF,\n f1,f8,f9,fA,fB,fC,fD,fE,fF,fH,fI,fJ,fK,fL,fM,f N,fO,fP,fQ,\n d12,d82,d92,dA2,dB2,dC2,dD2,dE2,dF2,dH2,dI2,dJ2,dK2,dL 2,dM2,dN2,dO2,dP2,dQ2,\n d13,d83,d93,dA3,dB3,dC3,dD3,dE3,dF3,dH3,dI3 ,dJ3,dK3,dL3,dM3,dN3,dO3,dP3,dQ3,\n d14,d84,d94,dA4,dB4,dC4,dD4,dE4, dF4,dH4,dI4,dJ4,dK4,dL4,dM4,dN4,dO4,dP4,dQ4,\n d15,d85,d95,dA5,dB5,d C5,dD5,dE5,dF5,dH5,dI5,dJ5,dK5,dL5,dM5,dN5,dO5,dP5,dQ5,\n d16,d86,d9 6,dA6,dB6,dC6,dD6,dE6,dF6,dH6,dI6,dJ6,dK6,dL6,dM6,dN6,dO6,dP6,dQ6,\n \+ d17,d87,d97,dA7,dB7,dC7,dD7,dE7,dF7,dH7,dI7,dJ7,dK7,dL7,dM7,dN7,dO7,d P7,dQ7,\n d18,d88,d98,dA8,dB8,dC8,dD8,dE8,dF8,dH8,dI8,dJ8,dK8,dL8,dM 8,dN8,dO8,dP8,dQ8,\n d19,d89,d99,dA9,dB9,dC9,dD9,dE9,dF9,dH9,dI9,dJ9 ,dK9,dL9,dM9,dN9,dO9,dP9,dQ9,\n s,t,jF,jM,jS,n,h,data,xx,ys,saveDigi ts;\n options `Copyright 2007 by Peter Stone`;\n \n data := SOLN _;\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),D igits+5); \n xx := evalf(x_rk89interp);\n n := nops(data);\n if \+ (data[1,1]data[n,1] or xxdata[1,1])) then\n erro r \"independent variable is outside the interpolation interval: %1\",e valf(data[1,1])..evalf(data[n,1]);\n end if;\n\n d12 := d12_; d82 \+ := d82_; d92 := d92_; dA2 := dA2_; dB2 := dB2_;\n dC2 := dC2_; dD2 : = dD2_; dE2 := dE2_; dF2 := dF2_; dH2 := dH2_;\n dI2 := dI2_; dJ2 := dJ2_; dK2 := dK2_; dL2 := dL2_; dM2 := dM2_;\n dN2 := dN2_; dO2 := \+ dO2_; dP2 := dP2_; dQ2 := dQ2_; \n d13 := d13_; d83 := d83_; d93 := \+ d93_; dA3 := dA3_; dB3 := dB3_;\n dC3 := dC3_; dD3 := dD3_; dE3 := d E3_; dF3 := dF3_; dH3 := dH3_;\n dI3 := dI3_; dJ3 := dJ3_; dK3 := dK 3_; dL3 := dL3_; dM3 := dM3_;\n dN3 := dN3_; dO3 := dO3_; dP3 := dP3 _; dQ3 := dQ3_;\n d14 := d14_; d84 := d84_; d94 := d94_; dA4 := dA4_ ; dB4 := dB4_;\n dC4 := dC4_; dD4 := dD4_; dE4 := dE4_; dF4 := dF4_; dH4 := dH4_;\n dI4 := dI4_; dJ4 := dJ4_; dK4 := dK4_; dL4 := dL4_; \+ dM4 := dM4_;\n dN4 := dN4_; dO4 := dO4_; dP4 := dP4_; dQ4 := dQ4_;\n d15 := d15_; d85 := d85_; d95 := d95_; dA5 := dA5_; dB5 := dB5_;\n \+ dC5 := dC5_; dD5 := dD5_; dE5 := dE5_; dF5 := dF5_; dH5 := dH5_;\n \+ dI5 := dI5_; dJ5 := dJ5_; dK5 := dK5_; dL5 := dL5_; dM5 := dM5_;\n \+ dN5 := dN5_; dO5 := dO5_; dP5 := dP5_; dQ5 := dQ5_;\n d16 := d16_; d 86 := d86_; d96 := d96_; dA6 := dA6_; dB6 := dB6_;\n dC6 := dC6_; dD 6 := dD6_; dE6 := dE6_; dF6 := dF6_; dH6 := dH6_;\n dI6 := dI6_; dJ6 := dJ6_; dK6 := dK6_; dL6 := dL6_; dM6 := dM6_;\n dN6 := dN6_; dO6 \+ := dO6_; dP6 := dP6_; dQ6 := dQ6_;\n d17 := d17_; d87 := d87_; d97 : = d97_; dA7 := dA7_; dB7 := dB7_;\n dC7 := dC7_; dD7 := dD7_; dE7 := dE7_; dF7 := dF7_; dH7 := dH7_;\n dI7 := dI7_; dJ7 := dJ7_; dK7 := \+ dK7_; dL7 := dL7_; dM7 := dM7_;\n dN7 := dN7_; dO7 := dO7_; dP7 := d P7_; dQ7 := dQ7_;\n d18 := d18_; d88 := d88_; d98 := d98_; dA8 := dA 8_; dB8 := dB8_;\n dC8 := dC8_; dD8 := dD8_; dE8 := dE8_; dF8 := dF8 _; dH8 := dH8_;\n dI8 := dI8_; dJ8 := dJ8_; dK8 := dK8_; dL8 := dL8_ ; dM8 := dM8_;\n dN8 := dN8_; dO8 := dO8_; dP8 := dP8_; dQ8 := dQ8_; \n d19 := d19_; d89 := d89_; d99 := d99_; dA9 := dA9_; dB9 := dB9_; \n dC9 := dC9_; dD9 := dD9_; dE9 := dE9_; dF9 := dF9_; dH9 := dH9_; \n dI9 := dI9_; dJ9 := dJ9_; dK9 := dK9_; dL9 := dL9_; dM9 := dM9_; \n dN9 := dN9_; dO9 := dO9_; dP9 := dP9_; dQ9 := dQ9_;\n\n # Perfo rm a binary search for the interval containing x.\n n := nops(data); \n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=data [jM,1] then jF := jM else jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do \n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF : = jM else jS := jM end if;\n end do;\n if jM = n then jF := \+ n-1; jS := n end if;\n end if;\n \n # Get the data needed from th e list.\n xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF, 2];\n f1 := data[jF,3];\n f8 := data[jF,4];\n f9 := data[jF,5]; \n fA := data[jF,6];\n fB := data[jF,7];\n fC := data[jF,8];\n \+ fD := data[jF,9];\n fE := data[jF,10];\n fF := data[jF,11];\n f H := data[jF,12];\n fI := data[jF,13];\n fJ := data[jF,14];\n fK := data[jF,15];\n fL := data[jF,16];\n fM := data[jF,17];\n fN \+ := data[jF,18];\n fO := data[jF,19];\n fP := data[jF,20];\n fQ : = data[jF,21];\n\n # Calculate the parameters.\n h := xx-xF;\n s := h/(xS-xF);\n b1 := (((((((d19*s+d18)*s+d17)*s+d16)*s+d15)*s+d14) *s+d13)*s+d12)*s+1;\n b8 := (((((((d89*s+d88)*s+d87)*s+d86)*s+d85)*s +d84)*s+d83)*s+d82)*s;\n b9 := (((((((d99*s+d98)*s+d97)*s+d96)*s+d95 )*s+d94)*s+d93)*s+d92)*s;\n bA := (((((((dA9*s+dA8)*s+dA7)*s+dA6)*s+ dA5)*s+dA4)*s+dA3)*s+dA2)*s;\n bB := (((((((dB9*s+dB8)*s+dB7)*s+dB6) *s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := (((((((dC9*s+dC8)*s+dC7)*s+d C6)*s+dC5)*s+dC4)*s+dC3)*s+dC2)*s;\n bD := (((((((dD9*s+dD8)*s+dD7)* s+dD6)*s+dD5)*s+dD4)*s+dD3)*s+dD2)*s;\n bE := (((((((dE9*s+dE8)*s+dE 7)*s+dE6)*s+dE5)*s+dE4)*s+dE3)*s+dE2)*s;\n bF := (((((((dF9*s+dF8)*s +dF7)*s+dF6)*s+dF5)*s+dF4)*s+dF3)*s+dF2)*s;\n bH := (((((((dH9*s+dH8 )*s+dH7)*s+dH6)*s+dH5)*s+dH4)*s+dH3)*s+dH2)*s;\n bI := (((((((dI9*s+ dI8)*s+dI7)*s+dI6)*s+dI5)*s+dI4)*s+dI3)*s+dI2)*s;\n bJ := (((((((dJ9 *s+dJ8)*s+dJ7)*s+dJ6)*s+dJ5)*s+dJ4)*s+dJ3)*s+dJ2)*s;\n bK := ((((((( dK9*s+dK8)*s+dK7)*s+dK6)*s+dK5)*s+dK4)*s+dK3)*s+dK2)*s;\n bL := (((( (((dL9*s+dL8)*s+dL7)*s+dL6)*s+dL5)*s+dL4)*s+dL3)*s+dL2)*s;\n bM := ( ((((((dM9*s+dM8)*s+dM7)*s+dM6)*s+dM5)*s+dM4)*s+dM3)*s+dM2)*s;\n bN : = (((((((dN9*s+dN8)*s+dN7)*s+dN6)*s+dN5)*s+dN4)*s+dN3)*s+dN2)*s;\n b O := (((((((dO9*s+dO8)*s+dO7)*s+dO6)*s+dO5)*s+dO4)*s+dO3)*s+dO2)*s;\n \+ bP := (((((((dP9*s+dP8)*s+dP7)*s+dP6)*s+dP5)*s+dP4)*s+dP3)*s+dP2)*s; \n bQ := (((((((dQ9*s+dQ8)*s+dQ7)*s+dQ6)*s+dQ5)*s+dQ4)*s+dQ3)*s+dQ2) *s;\n \n # Calculate the interpolated y value.\n t := b1*f1 + b8 *f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE*fE + bF*fF\n + b H*fH + bI*fI + bJ*fJ + bK*fK + bL*fL + bM*fM + bN*fN + bO*fO + bP*fP\n \+ + bQ*fQ;\n ys := yF + t*h;\n Digits := saveDigits;\n evalf(ys); \nend proc: # of rk89interp1\n\n## higher precision interpolation proc edure\nrk89interp2 := proc(x_rk89interp::realcons)\n local b1,b8,b9, bA,bB,bC,bD,bE,bF,bH,bM,bN,bO,bP,bQ,bR,bS,xF,xS,yF,\n f1,f8,f9,fA,fB ,fC,fD,fE,fF,fH,fM,fN,fO,fP,fQ,fR,fS,\n d12,d82,d92,dA2,dB2,dC2,dD2, dE2,dF2,dH2,dM2,dN2,dO2,dP2,dQ2,dR2,dS2,\n d13,d83,d93,dA3,dB3,dC3,d D3,dE3,dF3,dH3,dM3,dN3,dO3,dP3,dQ3,dR3,dS3,\n d14,d84,d94,dA4,dB4,dC 4,dD4,dE4,dF4,dH4,dM4,dN4,dO4,dP4,dQ4,dR4,dS4,\n d15,d85,d95,dA5,dB5 ,dC5,dD5,dE5,dF5,dH5,dM5,dN5,dO5,dP5,dQ5,dR5,dS5,\n d16,d86,d96,dA6, dB6,dC6,dD6,dE6,dF6,dH6,dM6,dN6,dO6,dP6,dQ6,dR6,dS6,\n d17,d87,d97,d A7,dB7,dC7,dD7,dE7,dF7,dH7,dM7,dN7,dO7,dP7,dQ7,dR7,dS7,\n d18,d88,d9 8,dA8,dB8,dC8,dD8,dE8,dF8,dH8,dM8,dN8,dO8,dP8,dQ8,dR8,dS8,\n d19,d89 ,d99,dA9,dB9,dC9,dD9,dE9,dF9,dH9,dM9,dN9,dO9,dP9,dQ9,dR9,dS9,\n\n s, t,jF,jM,jS,n,h,data,xx,ys,saveDigits;\n options `Copyright 2007 by P eter Stone`;\n \n data := SOLN_;\n saveDigits := Digits;\n Dig its := max(trunc(evalhf(Digits)),Digits+5);\n xx := evalf(x_rk89inte rp);\n n := nops(data);\n if (data[1,1]data[n,1 ] or xxdata[1,1])) then\n error \"independent variable is outside t he interpolation interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n \+ end if;\n\n d12 := d12_; d82 := d82_; d92 := d92_; dA2 := dA2_; dB 2 := dB2_; dC2 := dC2_;\n dD2 := dD2_; dE2 := dE2_; dF2 := dF2_; dH2 := dH2_; dM2 := dM2_; dN2 := dN2_;\n dO2 := dO2_; dP2 := dP2_; dQ2 \+ := dQ2_; dR2 := dR2_; dS2 := dS2_;\n d13 := d13_; d83 := d83_; d93 : = d93_; dA3 := dA3_; dB3 := dB3_; dC3 := dC3_;\n dD3 := dD3_; dE3 := dE3_; dF3 := dF3_; dH3 := dH3_; dM3 := dM3_; dN3 := dN3_;\n dO3 := \+ dO3_; dP3 := dP3_; dQ3 := dQ3_; dR3 := dR3_; dS3 := dS3_;\n d14 := d 14_; d84 := d84_; d94 := d94_; dA4 := dA4_; dB4 := dB4_; dC4 := dC4_; \n dD4 := dD4_; dE4 := dE4_; dF4 := dF4_; dH4 := dH4_; dM4 := dM4_; \+ dN4 := dN4_;\n dO4 := dO4_; dP4 := dP4_; dQ4 := dQ4_; dR4 := dR4_; d S4 := dS4_;\n d15 := d15_; d85 := d85_; d95 := d95_; dA5 := dA5_; dB 5 := dB5_; dC5 := dC5_;\n dD5 := dD5_; dE5 := dE5_; dF5 := dF5_; dH5 := dH5_; dM5 := dM5_; dN5 := dN5_;\n dO5 := dO5_; dP5 := dP5_; dQ5 \+ := dQ5_; dR5 := dR5_; dS5 := dS5_;\n d16 := d16_; d86 := d86_; d96 : = d96_; dA6 := dA6_; dB6 := dB6_; dC6 := dC6_;\n dD6 := dD6_; dE6 := dE6_; dF6 := dF6_; dH6 := dH6_; dM6 := dM6_; dN6 := dN6_;\n dO6 := \+ dO6_; dP6 := dP6_; dQ6 := dQ6_; dR6 := dR6_; dS6 := dS6_;\n d17 := d 17_; d87 := d87_; d97 := d97_; dA7 := dA7_; dB7 := dB7_; dC7 := dC7_; \n dD7 := dD7_; dE7 := dE7_; dF7 := dF7_; dH7 := dH7_; dM7 := dM7_; \+ dN7 := dN7_;\n dO7 := dO7_; dP7 := dP7_; dQ7 := dQ7_; dR7 := dR7_; d S7 := dS7_;\n d18 := d18_; d88 := d88_; d98 := d98_; dA8 := dA8_; dB 8 := dB8_; dC8 := dC8_;\n dD8 := dD8_; dE8 := dE8_; dF8 := dF8_; dH8 := dH8_; dM8 := dM8_; dN8 := dN8_;\n dO8 := dO8_; dP8 := dP8_; dQ8 \+ := dQ8_; dR8 := dR8_; dS8 := dS8_;\n d19 := d19_; d89 := d89_; d99 : = d99_; dA9 := dA9_; dB9 := dB9_; dC9 := dC9_;\n dD9 := dD9_; dE9 := dE9_; dF9 := dF9_; dH9 := dH9_; dM9 := dM9_; dN9 := dN9_;\n dO9 := \+ dO9_; dP9 := dP9_; dQ9 := dQ9_; dR9 := dR9_; dS9 := dS9_;\n\n # Perf orm a binary search for the interval containing x.\n n := nops(data) ;\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n if xx>=dat a[jM,1] then jF := jM else jS := jM end if;\n end do;\n if j M = n then jF := n-1; jS := n end if;\n else\n while jS-jF>1 do \n jM := trunc((jF+jS)/2);\n if xx<=data[jM,1] then jF : = jM else jS := jM end if;\n end do;\n if jM = n then jF := \+ n-1; jS := n end if;\n end if;\n \n # Get the data needed from th e list.\n xF := data[jF,1];\n xS := data[jS,1];\n yF := data[jF, 2];\n f1 := data[jF,3];\n f8 := data[jF,4];\n f9 := data[jF,5]; \n fA := data[jF,6];\n fB := data[jF,7];\n fC := data[jF,8];\n \+ fD := data[jF,9];\n fE := data[jF,10];\n fF := data[jF,11];\n f H := data[jF,12];\n fM := data[jF,13];\n fN := data[jF,14];\n fO := data[jF,15];\n fP := data[jF,16];\n fQ := data[jF,17];\n fR \+ := data[jF,18];\n fS := data[jF,19];\n\n # Calculate the parameter s.\n h := xx-xF;\n s := h/(xS-xF);\n b1 := (((((((d19*s+d18)*s+d 17)*s+d16)*s+d15)*s+d14)*s+d13)*s+d12)*s+1;\n b8 := (((((((d89*s+d88 )*s+d87)*s+d86)*s+d85)*s+d84)*s+d83)*s+d82)*s;\n b9 := (((((((d99*s+ d98)*s+d97)*s+d96)*s+d95)*s+d94)*s+d93)*s+d92)*s;\n bA := (((((((dA9 *s+dA8)*s+dA7)*s+dA6)*s+dA5)*s+dA4)*s+dA3)*s+dA2)*s;\n bB := ((((((( dB9*s+dB8)*s+dB7)*s+dB6)*s+dB5)*s+dB4)*s+dB3)*s+dB2)*s;\n bC := (((( (((dC9*s+dC8)*s+dC7)*s+dC6)*s+dC5)*s+dC4)*s+dC3)*s+dC2)*s;\n bD := ( ((((((dD9*s+dD8)*s+dD7)*s+dD6)*s+dD5)*s+dD4)*s+dD3)*s+dD2)*s;\n bE : = (((((((dE9*s+dE8)*s+dE7)*s+dE6)*s+dE5)*s+dE4)*s+dE3)*s+dE2)*s;\n b F := (((((((dF9*s+dF8)*s+dF7)*s+dF6)*s+dF5)*s+dF4)*s+dF3)*s+dF2)*s;\n \+ bH := (((((((dH9*s+dH8)*s+dH7)*s+dH6)*s+dH5)*s+dH4)*s+dH3)*s+dH2)*s; \n bM := (((((((dM9*s+dM8)*s+dM7)*s+dM6)*s+dM5)*s+dM4)*s+dM3)*s+dM2) *s;\n bN := (((((((dN9*s+dN8)*s+dN7)*s+dN6)*s+dN5)*s+dN4)*s+dN3)*s+d N2)*s;\n bO := (((((((dO9*s+dO8)*s+dO7)*s+dO6)*s+dO5)*s+dO4)*s+dO3)* s+dO2)*s;\n bP := (((((((dP9*s+dP8)*s+dP7)*s+dP6)*s+dP5)*s+dP4)*s+dP 3)*s+dP2)*s;\n bQ := (((((((dQ9*s+dQ8)*s+dQ7)*s+dQ6)*s+dQ5)*s+dQ4)*s +dQ3)*s+dQ2)*s;\n bR := (((((((dR9*s+dR8)*s+dR7)*s+dR6)*s+dR5)*s+dR4 )*s+dR3)*s+dR2)*s;\n bS := (((((((dS9*s+dS8)*s+dS7)*s+dS6)*s+dS5)*s+ dS4)*s+dS3)*s+dS2)*s;\n \n # Calculate the interpolated y value.\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE*fE \+ + bF*fF\n + bH*fH + bM*fM + bN*fN + bO*fO + bP*fP + bQ*fQ + bR*fR + bS*fS;\n ys := yF + t*h;\n Digits := saveDigits;\n ev alf(ys);\nend proc: # of rk89interp2\n\nrk89step := proc(x_rk89step::r ealcons)\n local c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE,cG,a21,a31,a 32,a41,a42,\n a43,a51,a53,a54,a61,a64,a65,a71,a74,a75,a76,a81,a86,a8 7,a91,a96,a97,\n a98,aA1,aA6,aA7,aA8,aA9,aB1,aB6,aB7,aB8,aB9,aBA,aC1 ,aC6,aC7,aC8,aC9,\n aCA,aCB,aD1,aD6,aD7,aD8,aD9,aDA,aDB,aDC,aE1,aE6, aE7,aE8,aE9,aEA,aEB,\n aEC,aED,aF1,aF6,aF7,aF8,aF9,aFA,aFB,aFC,aFD,a FE,b1,b8,b9,bA,bB,bC,bD,\n bE,bF,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC ,fD,fE,fF,xk,yk,t,jF,jM,jS,\n n,h,data,fn,xx,ys,saveDigits;\n opti ons `Copyright 2007 by Peter Stone`;\n \n data := SOLN_;\n\n sav eDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5); \n\n # procedure to evaluate the slope field\n fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY_));\n if val= lasterror or not type(val,numeric) then\n error \"evaluation o f slope field failed at %1\",evalf([X_,Y_],saveDigits);\n end if; \n val;\n end proc;\n\n xx := evalf(x_rk89step);\n n := \+ nops(data);\n if (data[1,1]data[n,1] or xxdata[1,1 ])) then\n error \"independent variable is outside the interpolat ion interval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := 0.04; c3 := c3_; c4 := c4_; c5 := 0.576; c6 := c6_; c7 := c7_ ; c8 := 0.64;\n c9 := 0.48; cA := 0.6754e-1; cB := 0.25; cC := cC_; \+ cD := 0.8115; cE := 0.906;\n a21 := c2; a31 := a31_; a32 := a32_; a4 1 := a41_; a43 := a43_; a51 := a51_;\n a53 := a53_; a54 := a54_; a61 := a61_; a64 := a64_; a65 := a65_; a71 := a71_;\n a74 := a74_; a75 \+ := a75_; a76 := a76_; a81 := a81_; a86 := a86_; a87 := a87_;\n a91 : = 0.7125e-1; a96 := a96_; a97 := a97_; a98 := -0.3375e-1; aA1 := aA1_; \n aA6 := aA6_; aA7 := aA7_; aA8 := aA8_; aA9 := aA9_; aB1 := aB1_; \+ aB6 := aB6_;\n aB7 := aB7_;aB8 := aB8_; aB9 := aB9_; aBA := aBA_; aC 1 := aC1_; aC6 := aC6_;\n aC7 := aC7_; aC8 := aC8_; aC9 := aC9_; aCA := aCA_; aCB := aCB_; aD1 := aD1_;\n aD6 := aD6_; aD7 := aD7_; aD8 \+ := aD8_; aD9 := aD9_; aDA := aDA_; aDB := aDB_;\n aDC := aDC_; aE1 : = aE1_; aE6 := aE6_; aE7 := aE7_; aE8 := aE8_; aE9 := aE9_;\n aEA := aEA_; aEB := aEB_; aEC := aEC_; aED := aED_; aF1 := aF1_; aF6 := aF6_ ;\n aF7 := aF7_; aF8 := aF8_; aF9 := aF9_; aFA := aFA_; aFB := aFB_; aFC := aFC_;\n aFD := aFD_; aFE := aFE_; b1 := b1_; b8 := b8_; b9 : = b9_; bA := bA_; bB := bB_;\n bC := bC_; bD := bD_; bE := bE_; bF : = bF_;\n # Perform a binary search for the interval containing x.\n \+ n := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n \+ if xx>=data[jM,1] then jF := jM else jS := jM end if;\n en d do;\n if jM = n then jF := n-1; jS := n end if;\n else\n \+ while jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=dat a[jM,1] then jF := jM else jS := jM end if;\n end do;\n if j M = n then jF := n-1; jS := n end if;\n end if;\n \n # Get the da ta needed from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n \n # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,y k);\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3; \n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4; \n f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5; \n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a86*f6 + \+ a87*f7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a96*f6 + a 97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA 6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h); \n \+ t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := \+ fn(xk + cB*h,yk + t*h); \n t := aC1*f1 + aC6*f6 + aC7*f7 + aC8*f8 + \+ aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n t := a D1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC; \n fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC\n \+ + aED*fD;\n fE := fn(xk \+ + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 + aF7*f7 + aF8*f8 + aF9 *f9 + aFA*fA + aFB*fB + aFC*fC\n \+ + aFD*fD + aFE*fE;\n fF := fn(xk + h,yk + t*h) ;\n\n # Calculate the intermediate y value.\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE*fE + bF*fF;\n ys := yk + t*h;\n \n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk 89step \n\n # start of main procedure rungk89\n x := lhs(eqn1);\n \+ y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rh s(rs);\n y0 := rhs(eqn2);\n\n # Get the options.\n # Set the def ault values to start with.\n maxstps := 2000;\n t := Float(1,-Digi ts);\n hmx := 0.5;\n hstrt := evalf(0.1*10^(-ceil(Digits/10)));\n \+ hmn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ymaxtemp := 0 ;\n outpt := 'rkinterp';\n prntflg := false;\n Options := [];\n \+ if nargs>3 then\n Options:=[args[4..nargs]];\n if not type (Options,list(equation)) then\n error \"each optional argument must be an equation\"\n end if;\n if hasoption(Options,'max steps','maxstps','Options') then\n if not type(maxstps,posint) then\n error \"\\\"maxsteps\\\" must be a positive integer \"\n end if;\n end if;\n if hasoption(Options,'toler ance','t','Options') then \n tt := evalf(t); \n if not type(tt,float) or \n tt>Float(1,-iquo(Digits,2)) or tthmx) or evalf(hstrttrue then prntflg := false end if; \n end if; \n if nops(Options)>0 then\n error \"%1 is not a valid op tion for %2\",op(1,Options), procname;\n end if;\n end if;\n\n \+ if prntflg then\n print(`method: Verner \"most robust\" 16 stag e, order 8-9`);\n print(`an embedded order 8 scheme provides erro r control`);\n if outpt='rkinterp' then\n print(`12 extra stages are used to construct the interpolation procedure`);\n en d if;\n print(``);\n end if;\n\n saveDigits := Digits;\n Di gits := max(trunc(evalhf(Digits)),Digits+5);\n \n # procedure to e valuate the slope field\n fn := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\}, \n proc(X_,Y_)\n local val; \n val := traperror(evalf(F XY_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDi gits);\n end if;\n val;\n end proc);\n\n SQRT6 := eva lf[Digits+3](sqrt(6)); \n\n # nodes\n c2 := 0.04;\n c3 := evalf( 48/335-32/1675*SQRT6);\n c4 := evalf(72/335-48/1675*SQRT6);\n c5 : = 0.576;\n c6 := evalf(48/125-8/125*SQRT6);\n c7 := evalf(48/125+8 /125*SQRT6);\n c8 := 0.64;\n c9 := 0.48;\n cA := 0.6754e-1;\n \+ cB := 0.25;\n cC := evalf(57617028499878/85094827871699);\n cD := \+ 0.8115;\n cE := 0.906;\n\n # linking coefficients\n a21 := c2;\n a31 := evalf(-15792/112225+5536/112225*SQRT6);\n a32 := evalf(318 72/112225-1536/22445*SQRT6);\n a41 := evalf(18/335-12/1675*SQRT6);\n a43 := evalf(54/335-36/1675*SQRT6);\n a51 := evalf(4014/3125+252/ 625*SQRT6);\n a53 := evalf(-14742/3125-972/625*SQRT6);\n a54 := ev alf(12528/3125+144/125*SQRT6);\n a61 := evalf(1232/16875-152/16875*S QRT6);\n a64 := evalf(29684/106875-13372/320625*SQRT6);\n a65 := e valf(2132/64125-284/21375*SQRT6);\n a71 := evalf(2032/16875+152/1687 5*SQRT6);\n a74 := evalf(-7348/98325-33652/294975*SQRT6);\n a75 := evalf(10132/64125-716/21375*SQRT6);\n a76 := evalf(2592/14375+2912/ 14375*SQRT6);\n a81 := evalf(16/225);\n a86 := evalf(64/225+4/225* SQRT6);\n a87 := evalf(64/225-4/225*SQRT6);\n a91 := 0.7125e-1;\n \+ a96 := evalf(177/800+69/1600*SQRT6);\n a97 := evalf(177/800-69/160 0*SQRT6);\n a98 := -0.3375e-1;\n aA1 := evalf(28445308290460740226 57/58982400000000000000000);\n aA6 := evalf(4287156859652598464203/5 8982400000000000000000-\n 1598864762333658025459/11796480000 0000000000000*SQRT6);\n aA7 := evalf(4287156859652598464203/58982400 000000000000000+\n 1598864762333658025459/117964800000000000 000000*SQRT6);\n aA8 := evalf(-141033886218604337343/655360000000000 0000000);\n aA9 := evalf(-21409264848554971927/204800000000000000000 );\n aB1 := evalf(-72189389771/9959178240000-459663572789/5975506944 0000*SQRT6);\n aB6 := evalf(1/30);\n aB7 := evalf(-142012409262669 11/557169364500480000-\n 31790792357660029/55716936450048000 0*SQRT6);\n aB8 := evalf(22414436941/1563197440000+459663572789/5627 5107840000*SQRT6);\n aB9 := evalf(154180604903/2534154240000+4596635 72789/11403694080000*SQRT6);\n aBA := evalf(21871487332435000000/125 536952879579583419+\n 18386542911560000000/11298325759162162 50771*SQRT6);\n aC1 := evalf(-17814457135339308018349626715861482187 7982611914666395752937745405391408707734804982447062502773/12477180101 1299405474614551641042535359813494760056839715637349132420387912040530 4413829778240000+35259119457556931711565118099122309702656888038447848 4650944931412648046608828531034562538513357/81101670657344613558499458 5666776479838787715940369458151642769360732521428263447868989355856000 0*SQRT6);\n aC6 := evalf(-391150225456457796885858319889751408825022 45161831122703201435591036520210945751850583137867/3842542879826810236 7071108589483043166777031255688218331140907046999467997785653437677908 480-490826700396287454540598331961129757400186839154291202145347161815 801053957874498846640625/153701715193072409468284434357932172667108125 02275287332456362818799787199114261375071163392*SQRT6);\n aC7 := eva lf(6432100415353289329239558349593602702779307803344850302651057507965 67439186095378077346484617022694073/1814903407134118101527330524719997 209072721513421672786517822272756721738310655354625038802858212480000* SQRT6-6220642966809325161935258654730602646524634866355956674478556999 20023546211607797417635623004817316459/9074517035670590507636652623599 9860453636075671083639325891113637836086915532767731251940142910624000 0);\n aC8 := evalf(1203943546728385294644268186854769106596033156989 737459970836017592684437096940490927391123081521/654673243150492794078 9740125933173479539636700187880198168132038132534360122730704444373657 280000-151110511960958278763850506139095613011386663021919350564690684 891134877118069370443383945077153/327336621575246397039487006296658673 9769818350093940099084066019066267180061365352222186828640000*SQRT6); \n aC9 := evalf(6368146615670137844952590316092896179010043437749793 6201427140303316098275608362465676059840449/11905763493189349085278056 9777780769114850167606078444507680127107913165342297705956314829715000 -352591194575569317115651180991223097026568880384478484650944931412648 046608828531034562538513357/154774925411461538108614740711114999849305 2178879019778599841652402871149449870177432092786295000*SQRT6);\n aC A := evalf(10278934048763239705668635930656276438279802537812076691952 406255660602976082835598179622579836784640000000/207066073335586500045 6385391607475107799460834755308758730143246500202770197951235105311492 7376343490460197-24757946279683404392669266925829425235785590869511266 396518921812563538267024485653444025561440747520000000/269185895336262 4500593301009089717640139299085181901386349186220450263601257336605636 90494055892465375982561*SQRT6);\n aCB := evalf(196350000965094663808 43956455829094932847113883632439882926745444809822658280742880787456/ \n15009933124323477487137151792766813737022277834253210285601916815234 167186635020874092933);\n aD1 := evalf(25256082419495633863089646244 38617443527/\n 12416017897756354830807859200000000000000*SQR T6-\n 25488511950948766602163761842966272037005387677568247/ \n 25343364340644945281003771622773961523200000000000000);\n aD6 := evalf(-552470350996365859393640759989/2400793528263703412500 070400000*SQRT6-\n 2617546081675469247418718340204655213/431 392587109884206933606400000000000);\n aD7 := evalf(-4596929461840723 2267578352626581642155421231201/\n 1018773115413378158940619 2186163200000000000000+\n 1540493536582818303738906021531546 510663696889/\n 88588966557685057299184279879680000000000000 0*SQRT6);\n aD8 := evalf(-3968812951635028178485515838403541696971/ \n 18374628007211630439078297600000000000000*SQRT6+\n \+ 203013873418014401588800777489550153682185921397719/\n 6 003783517480134311881093736968119910400000000000000);\n aD9 := evalf (-677602211254760908521917338264019314117/\n 635714271434389 910412902400000000000000*SQRT6+\n 57340072791914637839492204 156400815228449519011392389/\n 19744238839693126186283635091 213610188800000000000000);\n aDA := evalf(-8800028717594297513271653 743688562521/\n 20449362746897197076153911415852248500*SQRT6 +\n 24100788715039192225758197856261740786803059875758180717 /\n 9662717001210818114953908042643919942065136939286292000) ;\n aDB := evalf(124358916033523439225154730110040589545064737/\n \+ 19935912449945669485002510178704400000000000);\n aDC := eval f(59471613929748667447508235610359202988633073968535794522322398538717 2161751824241784555387316314439/\n818019847119678359631725769101238313 386585208743795596694052943582031156000597320370585600000000000);\n \+ aE1 := evalf(-293880952873230803935166416296767553377/\n 866 938749696854853908947200000000000000*SQRT6+\n 18459267936147 0753674594239208189459317466722387929369596771/\n 1278912170 91830656233364014205731655064571321600000000000000);\n aE6 := evalf( 2897291244884828193281565089/19049265055803310768128000000*SQRT6+\n \+ 5966995986367380181027852718263477/684582962942931480729600000 000000);\n aE7 := evalf(-3748619435624523040662096435375495632409181 /\n 1405830768127326348741938035200000000000000*SQRT6+\n \+ 99009240614446727611594225452277068906413179/\n 16167 053833464253010532287404800000000000000);\n aE8 := evalf(41982993267 604400562166630899538221911/\n 11663582231140195102930560000 0000000000*SQRT6+\n 4632645823113234486269357844283603936661 991916850927460433/\n 50961899222159905771409520997573780966 38035200000000000000);\n aE9 := evalf(293880952873230803935166416296 767553377/\n 165447122399672764770545400000000000000*SQRT6- \n 121354756771846880705598195017571549684439925073498008634 75059/\n 333753408855726885777511338284367247352697475480000 0000000000);\n aEA := evalf(2149529255301345308782931502056356961843 2/\n 29973653446264566614372595657785433238875*SQRT6-\n \+ 8031428603597180964147750321204281053557209400385686643427859804 352/\n 25135864401783913069001781649090881137499339819491093 68563389778875);\n aEB := evalf(-44866632128961269158599595825347949 153517725172080973/\n 54296071758213081412322833390992498607 26338769531250);\n aEC := evalf(-35998853393475254381336822594505813 7961504440675167771570563740579175484411998973149563531328527853237660 249760109643/234128137445668240736067711662442379892483470931740696615 716602345729933343308008758732590194294958617150200000000000);\n aED := evalf(1011136807359189181222571916914688/2927578889427871359661497 484969729); \n aF1 := evalf(4220334940168717525563719481764309232553 /\n 5553268895030690235789996003491120640000*SQRT6-\n \+ 43117938494612449223384237106139955697243762787772847383/\n \+ 14030104862294690648579566521727488445420965260989440000);\n aF6 := evalf(-65372649360291914372644744384375/45758289359215688621307791 0962176*SQRT6-\n 492170504431044248358505817476691843/263110 16381549020957251979880325120);\n aF7 := evalf(312292306982904450161 582808948983992497619279/\n 54031196176535884913246084116864 832317440000*SQRT6-\n 60242025722206083647640080390153021797 730167/\n 4671870346091448695506240355969515576320000);\n \+ aF8 := evalf(-4220334940168717525563719481764309232553/\n 52 29862652007483519857107084128791040000*SQRT6-\n 101284860197 54425336362855829794634260766582925227304979/\n 205144045873 3049774272501566471676463052668060718080000);\n aF9 := evalf(-422033 4940168717525563719481764309232553/\n 1059789239915401287502 749181781142480000*SQRT6+\n 90164396775224825317874747969895 939573106537263617688583/\n 99321945821955728204114927159105 30662743409752296080000);\n aFA := evalf(-43216229787327667461772487 493266526541342720000000/\n 26879922067906624005297106621487 120800647611685231*SQRT6+\n 82222042178435392241610634610511 2190310210366765138782108892460117760000000/\n 1125399614369 30436130682455392076582934435837857314380718907401253008522853);\n a FB := evalf(209814213871916216679569640811090009729840605120/\n \+ 11651974660960738096987230622554824075229159217);\n aFC := evalf (394155089286395228118412271548581315021451985814824457854376666199907 9625453432169420046111603168071904019820197053706993310801913/\n576348 8069457478355617493981609669453909166107652101824938575939967327573639 76976471505530337022074730630638475548489174498085584);\n aFD := eva lf(-4759443892077050695292772766912275498897121280000000000/\n \+ 4614026158486489304426198097242323507384603506591241137);\n aFE : = evalf(38733614144315448443538220691259283298308750000000/\n \+ 93806291160324220065540465392781147766752569954001);\n\n#step for er ror estimate \n aG1 := evalf(-15631765399556785018492106340124676802 7/\n 212359240683067701291661898043594240000*SQRT6+\n \+ 18092408213832965447840389945226814727838921316097789/\n \+ 4568260908663202892681034746459555501706277524480000);\n aG6 := eva lf(41984484090942118562371132909375/52494462812567108248894805557248*S QRT6+\n 65946837846509057750066287355594411/3018431611722608 724311451319541760);\n aG7 := evalf(-3880090763487185155742996119016 8666395776983/\n 6198524154042582121698476759940763269120000 *SQRT6+\n 8692965898134239206513518248119006769975359/\n \+ 535962614823230784958890847664050959360000);\n aG8 := evalf(2 641630262222426284468500071736583566105608571199325883/\n 23 5343729805469979809271071241826755571130067491840000+\n 1563 17653995567850184921063401246768027/\n 199992055607259790546 219146109360640000*SQRT6);\n aG9 := evalf(15631765399556785018492106 3401246768027/\n 40526767661819895652001992553977680000*SQRT 6-\n 193422103474923353694542105476136625982637168991506421/ \n 16048357343710211432072833749116213173856151273040000);\n aGA := evalf(-19419587503350096681694941672242361995243037384025897 671049255680000000/\n 21557389292330954074562840027405519256 07350553898010429805538450410571+\n 160069277691461478589359 1689228766904596480000000/\n 1027899053306897212338272667278 244239283200723671*SQRT6);\n aGB := evalf(-2728576005911396883790893 2750404506400064658240/\n 1336728621411169422812695849204871 581103756891);\n aGC := evalf(-1948530160618743333354845554365519173 2975032494415887278634251111026334129440593291012313858919222157899320 0454377/15840605894584140753571150900860666508000461134947537749588341 642048479030548925808450142813874420689113167632464);\n aGD := evalf (89488735256675489275877211680603518179732480000000000/588140732980292 44653337926984054935524805348324518339);\n\n # weights\n b1 := eva lf(100976787617015984669475787/6921502952403262310437464576);\n b8 : = evalf(8877148253451235588984375/4385514038208782482187638272);\n b 9 := evalf(961916572949681511747758515625/4416417715504587515036809762 176);\n bA := evalf(196733751670156400143437500000000000000000000000 0/\n 15431364863119854943071851131903908575429289017877);\n \+ bB := evalf(2323713252076974806855457536/1035237851422012692803111408 1);\n bC := evalf(28308600293241456954311939117138937391141264054325 1581210888597980900569995046369938026341226718065660612669846312263636 19/1583915465406700809680657570071738908858776311325098582329879822131 69380898029758612356596464561682203552186100842929847264);\n bD := e valf(296136352341197653422080000000000000/3899432561650270968394778037 550931439);\n bE := evalf(117048651891177050452812500000000/90395817 5807874008864483503817601);\n bF := evalf(145778296653275182685983/4 945417885871057962703934);\n \n # error coefficients\n e1 := eva lf(-177913950874589116688275/30899566751800278171595824);\n e8 := ev alf(-146310814863971313066015625/137047313694024452568363696);\n e9 \+ := evalf(146310814863971313066015625/1037692132402393683044363196);\n \+ eA := evalf(222392438593236395860343750000000000000000000000/\n \+ 15431364863119854943071851131903908575429289017877);\n eB := ev alf(-45545971423894813872198400/1478911216317160989718730583);\n eC \+ := evalf(3025370389918671796877721979223084958008905515178269838860344 10257521630925714114957719311447493546237081175474332041275/2605124120 7347052790800288981443074158861452488899647735688812864008121858228578 7191375981027239608887421358718491660933);\n eD := evalf(-3643677713 9115851097758720000000000000/\n 11308354428785785808344856308 8977011731);\n eE := evalf(117048651891177050452812500000000/9039581 75807874008864483503817601);\n eF := evalf(145778296653275182685983/ 4945417885871057962703934);\n eG := evalf(-16723862451391031122709/3 39047561915509883967882);\n\n ## nodes and linking coefficients for \+ 12 extra stages used for interpolation\n if outpt='rkinterp' then\n \+ cI := evalf(226653722310560373/305421660606510191);\n cJ := \+ 0.888;\n cK := 0.696;\n cL := 0.487;\n cM := 0.25e-1;\n cN := 0.15;\n cO := 0.32;\n cP := 0.78;\n cQ := 0 .96;\n cR := 0.42;\n cS := 0.25;\n aH1 := b1; aH8 := b8 ; aH9 := b9; aHA := bA; aHB := bB;\n aHC := bC; aHD := bD; aHE := bE; aHF := bF;\n aI1 := evalf(3087869512291919417337803948463966 1690038856015163826798964560158677379340068262361132541525526793677755 5906619425860405247304243350098196916984219632845530918276153550968630 41328551708358871485646120332024084108975995042341286612353842440693/2 0403328328115458494133410103092538326472371870850604130212953769287355 6667660937888053024876296028109843666686296038864614074267398811674942 2252854583423470769504064362172657759775020227135479838862766161624512 062675163952468167497075472344576+237041371792140016488292176699789957 9585818007296769261137280926500645849762612717599644271027754930360914 9314804030860352813229415562572410431201069297283740228146526641014393 7445459051963703569962871332731840781014225/12426302568909510326579728 6918195108175719520580444543463412989871404205233065643395132958732014 6803437551827609256142709084927740265171032272579749514163197940132746 513394263595335092515722480978556773742083196994120459986*SQRT6);\n \+ aI8 := evalf(133727921323555006019570849966463687303873497925022685 1939899808480335929866565136620212713369948589887091625387353301490756 8082702015234202520056507127612233667537598467333819967521261570671325 242954843184056029474183410504324658418633390890625/736878645460908712 3352457398969579942717124799744878613652798116958104906872894914045525 8812745718557854000413952212061689228479473308024119163225965015340569 7562894455269130785959470503210225011839593485731469643614088623525016 76930760850901504+8841894670628564938638219455811130726240203110772100 1948920458962640138626755282072267898040657304265783464784995141637589 2403285560606563718007334315631439249226287880342877750749805813856652 90519970241818077214403515625/2499855014213586015670970609045039762815 4065424765668547443655875961691216157773142345691726769887808701320678 2927247517729243106560360764277593123100503532351299237579911468789560 2121370622281856166575863117099558048424262*SQRT6);\n aI9 := eval f(19027838250299912052788416579684179951609584960616173000428881902679 8266321404493268572802739897123430394517339444358383789292458457429646 5219889788139277729751314444428212933448738125198221152312800906072259 3349691332125417162575872912510328125/95259467844256245233209584758601 8091941607394078226774898558096807703226398861971868080275027983782703 9149145139985005719723326957336805889948799892644873534053403586179073 3299366503262578665256865070593502377676407434449387200965408151977998 208-125080461194257747912443104496840385883397995225556539342375283410 5640985451660087851594655209298450589131940860906881702481936355183297 0901376689119586981335720762121234118758425241155415533138658922619574 2645815497656250/26776693962340140068807132003855981977872333681837698 6856113656979778290611658968192650592228874688829327135068264133065209 6582075033247674010155994114064791792472512878726931969092245172814641 4253290118500906575211496165331*SQRT6);\n aIA := evalf(1259048249 1688877403879750408595201934344022926666450484645373536529892988812193 7407009435025357650988964859374717985692362470222277459261827473554238 4434999603004026411108343010506046277552695340281804213162662295074075 36635736567933370633750000000000000000000000/9985357135562992906543688 7558660351574825195979887032071025368666945145476237025336343545686637 7367071115317383500029929708698317043902186209061528069683542508583153 5111800757873559555089616299610743556149426863301584827265535236214883 02531994773921078507510340723-5382772950704609289473413600415751778706 2309669480883137684259895304825856678337573751383782800154011559884903 2555789091274985024575432678790279586939467334723431418182764834845334 51592960639162228742859409248957841750000000000000000000000000/1127368 1740949200158247684268145698735742811097402300443591835959682002727747 5582671342889582071423041227873059682687949268918318661902881906935240 0731700220999067813569729578558627516429906319277190717304800626973428 89671473292164122768746705057*SQRT6);\n aIB := evalf(152553264273 9540438585464071223388279683247874854183173044990463480472098506588580 7994010294075234156120398464543812227174445677854315391003275403424676 7390678926011090834125274204953422728562502461369359331567188025243505 059909526401328050432/669883691973812610467335770453156370483999083890 5408282652319158792765233866591130386692836157657926708679975431388530 7276174293082872529583619794887431547787770142800380938974573945641870 0286433441117691950389837070309849019897303678878771719+24591819314480 6273015696138889147945877631130453062200870257197207841862867679986552 3263219713897497734280526287811801977615685429198776742977868094423757 2264533875991315976208564698130839371393254534583892570108493363200/24 1022828500152839880642205984289048073770218148565515773281251625009956 3656327794255889365871564646021400192680721350424271039869139199760851 1318564104719311144781806977489973000935496530247216299003016167059595 417422681099*SQRT6);\n aIC := evalf(-1286169054855917096277342379 8036227182768400822486062511152679333527894482477813636295898779693256 3150057009148306626630587252296717167130416631561655887317706843594367 0641337657955610449253549942918739603901411598518214731887233820991214 1629900298758444120123994508756162088857641720010405829526014031014558 51703911697343982521790319/3077847007399690652994790716760656217140198 7641096282821357524695767281042816881074495451326886117138069753267918 9918624817436214021311872388755756310373995232948217441261039523722434 9244185160307363678143371457542016247927492984132988765448850600056257 5903394144312011585873213895736912065412862905359227145137823607177284 246489228192-149435035485757625582968894536898996909445732860225802244 3661593597502090321796663723370603314834699697055639902776615578091291 0673731249822219140883145972506107825068648552192782645573645152085577 8283176410054821757608045276931599356445663362384577806549844881227542 8017787621870554561370630421818398005521746978200/38839862626189866686 5776477930247302618169204213866121749776511421565591875778010724621547 0251301547529951502490222907036352511570442429565232040956099733246456 0069567357384020195515380374464648829894067848180277531137913050117048 8515003038624216799751663058940028313968606732393228153544238100957720 42207684590076789*SQRT6);\n aID := evalf(560239638727388798677391 1766280268555866010542335241204051848993347270379535748298830428706661 5895322205574237442268993370668899290155940245925335083520767941840664 6810287491725358313940100248750495871323970271122904138697268786274167 67078400000000000/1149481599528462884538492214751747007614237551824746 5835900603610550248067892197347048018491126311533374461090906118513941 9592656382180721734388567109696596324476078437246159917724812281711316 0002805574494677363030270224366437829729628196949518539407689+10301553 9401655756767750106712184580137756080189788508155101354641343717778542 8296157893149509780816419979581893234062641964169630622220653507970287 3192750578246630044893537926448558093123006151963585368476070237018931 20000000000000/9650228182528661142482588330223020379830455715057788268 6036914184765380058705288227755096117696059956059156661010804769700933 3445772983105933370748140851008895123386328296949758702111206644993947 75191735116290462555352263327274001761*SQRT6);\n aIE := evalf(-58 8076437302196582984161244533620114374984526019262696171909025133647901 0727853802277214152023609529250674810622401784436242532686398471178136 4680440554593148417359262907036147631841618232301569779387727607836279 477698365365777291402137500000000/333746689850627323838088833576503846 2457091174435349318898710107557540450798720660005328332298530410370509 4730153155735994223895198608089547342288005069697073988870723967244927 6294808783278418671343854351208551202449907215412249411584544879301765 7-57814968729790247923973701634095111697215073348701689296031242109771 8499942100662829181529518964617161198763775708069764702761693062501766 1080780748609093595177596713814881559449889245169846428535679788603215 62880522500000000000/1347713572983128798080942723499096535415586930403 0822692632990703600819944388569085480658211721520233131765031481759359 7045411409395654740145970887778329546211769618737526836949225470794170 505270304450133814552105305767554050982833*SQRT6);\n aIF := evalf (-55867448836931479530687178180862025081886449063320593543352145502495 3761503787303038714739717587593329251119688513664290220096045352569348 0181641667332456360139612563880176916091504338212196205150767098482793 329143043883/349253823119279099665347901163806282663359962700679664974 8591658605360994283645200671428555727684608324877825342986495407499474 8877675417697079892308601070396084100520878433531175135255797047061079 0373486412643075809088442-39200946501734285094220225300045954123583127 9014464957921069979385626730728367123193760305414905977607585826582651 2244625092977870653660407545767958328314978859183988921353791001182244 2410322197863059503811317207511600/13432839350741503833282611583223318 5639753831807953717298022756100206192087832507718131867527987869550956 8394362687113618269028802987516065272303550330810399849388481572247443 5067359713768095023491937441785101656761888017*SQRT6);\n aIH := e valf(39232025182650223348705514342974632701372659084469723275868986428 5561292726062968338479777708318041698578704732566125565774470102410474 53809203074917818311689085695236821079162808291962058296896800766/2110 8120203624599039904358342948309669804450301472635254786055537091483716 0507379390370828341428589875192075274716930656265166151561850174242617 9424376628334268400782573489148452492234080426865002983107+75480094433 6806966504320672341445374683025099710891803616422753628143014299118632 7381680805016763616622545158788319590897849335742211353462315599050082 529876802005822088072459754534979821615887544400/211081202036245990399 0435834294830966980445030147263525478605553709148371605073793903708283 4142858987519207527471693065626516615156185017424261794243766283342684 00782573489148452492234080426865002983107*SQRT6); \n aJ1 := \+ evalf(6860400644785616741208965915106978554029126357689688712332022223 3201209618321727471353073299573169354110491204644252113503997229164047 1463208883989410524671228635143906551161406298561028469424429106643533 49601607693700074044306157987562421733697215037423454625363808531661/5 2929457106167154326180638398558662573947329502589301780280146172080516 1332834428333770391848107021187998702747628847415184402072554514026555 8698131688156311247788921741513624364515252273955466274124234548118470 306590427261358423180768325165814776275440537232421875000000000+932388 8804714432582281772674166380987021885172323245927388705704735888830449 0399656578029749975315704760995414541706489543788793798147545503021193 5595836461967119431580218739003544061826740336907211322312032216605773 959218828437861782074776969409452593048/151698742713677177196440446637 3167217177028817456170329550488661601559527600840225146316104123402191 9933617082755646885703910654071458149878744939927163669034509106436636 8333953103864699783459969238178312082637034023583370888928302328014197 68669157255517578125*SQRT6); \n aJ8 := evalf(-1425679017296707192 9017161600201273490523836842687749340853048423118780083284077773977090 7529290644322001569736669079071257202162403178023040681714111602622845 9701951892229742687549780159910881574872335003117180975264616740090359 96185280400449664808577597/8096564303547051681749371633221640839093041 6345299085606127418056891340466701020246079370981923701183202836713346 6495934055198124964712952032034132494788406474168709974975459898400105 9503197785863319255089460001986877426414256079827711622086543750000000 00+4484176714058709655179665043102368038239218192485135605653480056951 3118006016826953485500012995681100488834668910242228128871657736179178 8853232089386505917626771712894347902852030211444040766619059974426451 9031603062066957534862284043288/37005386155037097972908769786019937488 5339363297686712142675045064223821728433201176635198109919384810795802 5569097302875887768571157234049829591161647312710786740144547221660042 81733901772400901689266583041968312529100468812039681731234375*SQRT6); \n aJ9 := evalf(1076626769716159208771472829934494019886567247101 0751539099195493259845741564040931448561934275276630494047649646527315 4082185164273887153867312264326970960246596898146457057167155667776414 49002823005877843351540253070430486359658913836818008042991153575279/4 2913783536298693868036626220441398516177795657888600714158044323685496 0057515374021222896862581848672078899928551310614403216232627802067443 2159675751889128165416325781213181902176686680609776567507983886216332 0467645890419260524174245853939897031250000000-99611082050567766474718 2222939528700110089754473456898342046220094835699836433508545468543237 6772188302033298267860993556813503177350358942393725403630043001793684 7593260321097205355117071672938354627412001703876902739274631631200136 4576/64980688007942366158204582360115690714411518522393143014480143126 4177965592863730306819457114136467656180688339877364249237094282768768 4779903679052102164014545968017303762169732659233353309228900825907675 17467244139902745091735905344109375*SQRT6);\n aJA := evalf(142960 7818139480860934033702479003754063048529035758384276710120927175586014 5603424617375854403251903792989614872179684807226674369570697754567743 5451036237087439773759619403033959182635923937603049770471829206667888 652551430504293991457620737558785576435712000000/108703243556672625680 3501511996464116536774967389404738302712869724661197598715161231264724 2200060989022846956322670340654716546907312560075587234862639737140055 1134264679213526114126459370863278881290536169650887914830512658090570 4910116839119209336313424058961667-63052317756948728049646599249729415 6405896186508442551259952926147650657336661614871275994023460382289586 1903514581264333716296142735168497231132500213134559602441279630568681 09950843191629543406557886936480738501669253031371735040000000000000/4 0943882251966501142719841691721269745737583207870100150535603577489735 1614949080930618205107970341647258986105333896959250575109190929664620 9265288617698957081977046423181488875389787836532174875645509629274798 567906527888922432637970282212005943*SQRT6);\n aJB := evalf(33988 8279744145200053926668918218330653877695009038978811892662117884234855 4403881963131140336211761343662253616316936561786785679498248258491515 4732541534810032990939650587183522313481611240062217445074751252402215 4951031729901253818292006310591725683140352/15717621698146273954539031 7620898168370961099033497550973375423521848685515310361162133358857256 7421861800958961126585657655888433277321134042349891404927181898545345 2132089891185215172542969435314469760882677064417859950809500274700395 42084035167694091796875+8491680091808132933983019311365469801551736745 5006373799477512822380026540227411960045435232901974557088003391398280 1694102527688516429735480156872580830119036762685369026744658060366796 8281272042366181695071588940741866463327918369086373888/25698397438311 2796218554760897444813982713675729353637600111103357991371281114452386 3992475445384143804465316520079075713371551042784161516005642527774590 6362786364541732798723737563924361281028780953109462057337491848060127 336795470834228515625*SQRT6); aJC := evalf(208186015461349732097 3891971493159187333564497001390695733321306772767518822836818230436334 2495687776283259383468850137393026287823842664012727250772241565143045 2167273530422035138835169980886419398216538272162861573225029013530140 9808256505218128865246246669093552938780309142559168098177984850805024 10699016516968839611190189561829193442860116775977/6499455343969471581 9026561700767307137154356691519134885964696967702651498636848869310223 8285282192546407153860204132715038252649287539352104479177684257718757 1394397542590506390826169479312937565461361486225262987753917746887716 5093578956603100219134219289159870108092143705662858409313904786023495 8712551223936062372280104157661389241333007812500000-11013172510552271 9474682648683662012656705413969820252639074702022960153504083527758454 6394976037154360227860125701002314851364967914738820138184381326629492 5707843907806406723618691159970810035513731687518453981547831564205681 0795269415093126165821447643111236243874941704805317159526665707848773 7169033335139564927982963815088377984/80384918234465675566906277982549 4610245313327297708916116542904258150575358378924367401557836818024213 6295025459301186310961295317503138101120991745539300381653590848163577 4686370827777190908651698084567645697143167985447968820038784179431831 7408374361970688254392352005296658117078019509883750863093645978684090 42533849408321044921875*SQRT6);\n aJD := evalf(191607898049616610 4078448765060077220744248138931470721694055835079182187622768858644347 2620255716544532601054201603807876880792682775391875561522982818449135 5439036525997646332530424170294800279869504848424659605312971984176373 582228570174626022265458786304/121248969201499883828086525627751752788 2676371627314093298235599106511291652651069761878594688179958684730042 2840487642157496092205432254470454328197997949187644952397431300179287 2541684875827280063569849399308992691865121058306252769799517936146839 46678515625+6900615772902197344467137017617177748680749143371528799262 0775165405099222129679754536973234380943548123232065168730579664552016 4746680377373918378807417030523632740708672669275442838673756499128118 967899466950734053467770685823228459669690253312/227488329511907109070 6623349757811455263168645748353611659669826694537819985713507813681664 9016681355567200567019224073455895175686323299608754183128837432350501 4299766970000153727210087904845335176370045792845358869683191891602067 266970352915185055*SQRT6);\n aJE := evalf(71150989760142587244218 8404888085355392844630060280553471643650876033225365749408373301395790 2509053079540311670374572487958483806465265190286223165468589256500487 0237472659052835614875913169339429267278074344104909301059784325484432 2254156862155159296/12773161747965515663257378679929103504095935143717 7314254224726911124868014725672639386104139891133560862613896351099992 5128247880690484750935142462914261288858725382536500808164278192118022 6714940257306930622453702747916445923549919848463480843819140625-36847 3824615738036301206940472408999301430073526929067903694666826482331655 2154692761919152643173949740366361945870716208927742310532719511040306 7703110974345661320067631501090151555105043169874480392985505287619420 4990594533629690434551808/28234220075940118130314466853427873528815092 1355471205367670488182581852690034345163701816279382451655572527689873 5265606611606242069291155250071461388945056272074845444730802709553313 67066858687189281721315703433221935791217373628625879706295*SQRT6);\n \+ aJF := evalf(2221314725065122569207198530438886036644700558168552 4612182990111386604825048562717402625070789213456609329214962601238518 9758754696493471090956554801744421740703964948927939506595180878227078 2749625536820940384127886135783592516656619/49167694638860241597151726 0557953231533049954252928710576195425720452216346830687783026528220108 3258652222960953457160560299487962274325668053129688177829107491537014 6779936480111715335182884854994627452782452671271561320305633544921875 0-95946321023014796843691882151994649170915916787995293626103258152154 0178131028894851466470089504218037800930027166053218141569217798200939 7439326179530955284657245390839705577045636649902442545588031010462850 748042850045952/139570052953621521527981161433826136096209053850977062 2458030384509331712027338186460229922340067722085799500135373874078476 2073351942341745301819844999803196122504266380654286265572815685799328 124653072079965629943270947265625*SQRT6);\n aJH := evalf(-3388864 5341487890137299702915124815043135334697813581748763731684525607076654 6796564635138005688304031987746359115254664975571809645095063770496022 1919107162789431063507048527537981048743308139578379650582819186151745 9371384923651/31716214905835224231076720493971701366917276941082968289 6740033604098192739349851821764857950316538311441763257755842200838699 5018719542317273874236512603552685573534417079510863633572259676043467 924469406839177775987129211425781250+180863491806594503767247340835410 0526955943850596025181095707367483684248930017238419931149929042835906 4743689116704415553056284560365817009507428965392827270661480217400824 082647399380190174487324584978323513569536188764672/202983775397345435 0788910111614188887482705724229309970539136215066228433531839051659295 0908820258451932272848496373900853676768119805070830552795113680662737 187670620269308869527254862461926678194716604203770737766317626953125* SQRT6);\n aJI := evalf(533778013310333700623987816141481349887256 6133769231577040977887360741185975406942708599140904571624271773372300 0994293289208688151677406366889714485062698131562230866023895783536332 94233651736662751558158797043061380544633958234018254544715889539/7987 3312955658140244249709791713213174543159030618542895884585380730261286 6314320458998526916695092108735449274259457413012358450671464713010346 1483414984679700585731149811556385317045125323556694736816938867429479 5803206776494615352210998535156250+11795128106217938342154799091179267 0469521160132337815596228207889637835471175178850364250334867717273619 4942757891699423112254094226711756437756027766274271872307070617315960 9542953124406399773964899279046108831522303527909100101289344512/12468 0293394198072576389790894381601052945418974624066959429596691871627374 2539427057948920065085021828269969598844031083726608313243261991040540 3291184366329288719190087510722162446119220017259230808689855793060651 052207887062574103759765625*SQRT6);\n aK1 := evalf(18065596758808 7790642935383851091944153932397617932040759061578942971011488496692221 4946386141629657237728966174307137943638510220532889625296895331911566 2657444740081263297679926786351876458749827459294523079651670565299420 5993152581409182209578119630586303026057481153385346870875649261254639 09408630206386406633020779815703/1353796255210760012415768273641139814 5835364279966706565438982337482703019075362626189027336353625934518052 5102400507938953273878996688578830489892822522244351348819230587573651 1338925025558622795820390786804808614717639616854749845241527686337183 8892367199029417249122801527652862697749147101720658929215940206599531 25000000000+4242604887715171815942359378708231661138175031341176557197 4456649661054714337212298368024765824567397781419091717795955291729189 9913702974220986815828123738755257446544610695550038709288289851108244 8159252402313525295455541383973848351570180267942057427640140805416269 87846084030478078485896106903872099349489610832/1611662208584238110018 7717543346902554565909857103222101713074211288932165565907888320270638 5162213506167291788572033260658659379757962593845821300979193148037320 0228935566352989689196458998360471214750936672391207997190020065178387 1922948646871236776627617892163391812858961491503211606127502048403487 16183357928515625*SQRT6);\n aK8 := evalf(-27149876476166249070983 5530618709609419838960342984394677845551940836135802870831419747722334 9597756063228773361908027712753140598915161162915836426357353544055788 2348258563418303600503001479672722721469230855295968436422740739298212 2676988939316882909897807865667547171985510157052633088951024584943817 /203157711089482072251981255003250597814525268108079672480605465002733 9309115262311960819188737059593930605115229623412152107472998576619555 6775958432026463437444240650325260409123404469871214806360812736087752 3903985896715065562171188682994924171305069526106397589010037386347452 6198308028187519000000000+54263948408238908109892531875888695901103514 1470721913972410259627244806614610360246805586266403980305644661943954 4964030242146265285589821310527823915790335049140616283381133774070177 1795913632354448359009501726095624973991030104250860157090857977988229 433104072997652203830339748665778049776/130229301980437225802552086540 5452550093110693000510721029522211555986736612347635872319992780166406 3657725097625791103539150467939593715100497409251299015024002718365593 1156468739772242764197476671876513383028143580703022477924468710694227 5154944263266192989728134679726835560593716864120633025*SQRT6);\n \+ aK9 := evalf(14311427730454402425741631483851931644638581518225119525 1968065800722522688065394811683574810361695149893526758277154652186942 9312248540806363441154433507273165959411707525618040793408386703500601 1767797165661459032098454500663484045131596688809421755626915102307996 811079462207472459797145527183003496904229/593309014357620119289341495 8476710718085614491190149597628498741674569603421811400882131341693564 1599323810597417971230215584811344992022584407816478163536230809764233 6698095879660409247494030609263797670095458604573641229027664219942916 6905536182551249714601950924373909028145729973862317384842037675000000 0-28490197977932340708554491555419641505931728295700372734737983751301 8781823389673552839406083727752775616313065341600004836971879759696738 4372536865166701802618359696354392831852738319924518392250558905866899 0632354434880007290994113915230140852400942358233826525711369321171148 4574764906403392/49732107388674036201653087220364546131931957747128268 8127383571107917754538672048086950766690435466587235736476793750515214 3302348261290566249052101672537215179232716714009906703719241645032569 7962615373726578872312356244208151165534481411769693318172100104793345 607948877445668770369588833160175*SQRT6);\n aKA := evalf(-2619611 3968966332952439241356550473522607285147510511135590159319892434832343 4704977632687960054755382038484379592607689125954868515683663267688552 5980148885191332709024167113626316319789760623347239360701313673841012 0642759727361849827876250846252631049404065063024305779121094109029852 8736870400000000000000000/40118938322369531260674461997142938547089984 0936877671379896138517839436604615231709047606758914493726958397251984 5267675311188395002004120301896435292381293726129300014633388403384691 7973365625905420282381106884999485310164764742875950275191896208007881 8846432648193593764209417058678976803487729384707753800498251*SQRT6+68 2589336222094404769804816177099026173050133883858000764384279769662609 7218420517399793825739747824858209394541434999986335035402703747651483 5457362340300049834813456341317464007823882635008575195276401909060754 0157824723512451015801233723112688278865149413760761321894013868100084 19847105917002444533432320000000000/5228643918785389052730473097141928 9766443132126673357085697035309974988287770067984023447378022527518157 7351161407833957169485310394332622707345731131034207752335394343335720 0343439791895300208644787846230897687312147206923330696417961348008223 8443665129490514357849573655869750168947547219688836502524126256027793 4839);\n aKB := evalf(1852921118089170004852276774459735202404738 0194061935441376743956042203007461470426197386660243631785128189583360 6040292682564696920873939913192123189604395169222509000905307420626502 3974870198461224356978946629907340489720267488698889157893837254659143 601322801175773808185821419235733143552/137296243473878991735086631927 7185597172834719505490638123342735544789344470393665639111028434408663 5311171884840178813078764766836249409762204598116005774925788152016822 5355152325327768468063668782379174651700008088096384312307643623655284 2460992174613354732347432606589648175009724740788671875*SQRT6+44723275 6527839746980273224447738895196247764747028293529432242095071561501756 0487374357193259241378089295976833517026689639698801399997386480807863 9264937896643093453369922850658712005143165857081104741131416825863372 1845681368184587115198950719387417617078043373189524978297248573089957 285076506205526784/204812089526650820395868426020255816225744257880310 1652712284557808836867643743683947843870833443884911440762293717336683 0068440289374011210189078456686499450639952781870693611011028743984527 8529037604955098221253963879924716555878937939436098812694981500394704 4482711963830867905040114826570860015869140625);\n aKC := evalf(1 0506810707089318514673030779410529206637210175217606890065452488102554 7951507832059016714148887343541167451486305531430519166696731294410976 2154994988871414499950379675173715162720861660655245987362996508175318 7953302747715626587088846680192862890713117757804529799313435312986516 1407019784119704768840050130580988868094410816695854565082621057032454 71340823974240231869239886971711244392210264038648687/3324779352233413 0960180814989231339995464036777344280265533758844126335111671857111206 2645698784543703271642786217460011581544571438675879906450906259445051 3680138052015776922357900586747807870633805635569966942105502732576156 9985558382470399158261714762954483897217645142090817223422469673817691 8184613110158287714262236926944645292379346274432252929392269716644095 99721438772717758867338053710937500000-5018453579684846546151157737425 9859532993793222101074102330313653910808128240479422137879123727879379 3509309900203538323199562975064711759900558950142590210310848244841078 9651708681523410279141933419319788212215737930206783313118123439551694 8088788517220751882874244468736644840984600972736579154838774554907646 3744599637179162901240290327908787439335301518092189236527738107079400 782778818816/101442543165016417880032997678814157118120630899601160230 4615067707897333689454068991800597097740789331111038249328634665389914 7869982482987229623379388102253791420448560722875233869067117644151438 0034647443690071868885814680610177142280611439079364499658137250639870 7708378056970966360630780097385765409947088597144964872393423784263552 5439341945169470397245359087597169012592743786076991015625*SQRT6);\n \+ aKD := evalf(17060444770442586703255494732403691672227107077319860 4161378537875815782227913304038839500082192165254490215684390249628249 8179737233382314748632086747196271514794014679356351884329211767081020 0897146721153210799059524727055678894955662925822912266248877778387826 11619542625922276161295013332977321648601432064/1676340338249839226316 0567185062048706652483892082794060323481941798814195475686637062330756 6984850152573798851304100659237051296011437762753799354599895172232035 0600281393566089410645212640818429730286953905991798517071309697354525 2234691410025547963795534856869169451522030467683646703814982753104207 155324375-124578168103185562204077106812745641650182042132163533668672 2973054233609431801642040173033697793120269627938939155208549953324008 5793462415403179527486157967651827268730352397734794776266922381736630 0973602951776175385029981440400992626102028203721693461957598177433129 93307030286251525602938399490048000/6877293695383955800271001922076737 9309343523659826847426968131043277186442977175946922382591583528267722 5841441247592448152005316970001077964305044512390450182707938576981975 8315530852154423870480944766990383556096480292552604531385532181091292 53249796739891563863362113724326879329095541127497563249524321*SQRT6); \n aKE := evalf(8531524064222325552820312829939986418279640546856 7335107353637931104470098591600920056183594272964857457278705668605530 5670543161642420218769181601092745028306953059629894919773079057803074 4597425063625904519128260889057133733063344112415427448141781407445370 82085947057796714636599352575644020568234206464/3886056574231853148776 5160906711292476853633078098994332793273860801921842770235110369978517 0282290261016100799761445663503079159859637758730539894618483796134096 7285934727574491888863369427176915402665789467942328685497597062178053 4748667461287884271774296251897704820646476719889476465943289825929808 25625-1095373026466712216895979217525469341313840533077222936182258245 3251784415852075316717242495915012064588069761282701970969739673175104 6601383514296087852040513744137743744024820784923804556500070172313272 7150481542214116786613556859815681232313102799581090542849336050348586 88992352673380184393908224000/2072563506256988346014141915024602265432 1937641652796977489746059094358316144125392197321875748388813920858709 3206104353868308885258473471322954610463191357938184921916518803972900 7393797027827688214755087716235908632265385099828295186595597935353827 827962466767877590434478758394105411516975457382923107*SQRT6);\n \+ aKF := evalf(560018165117032485807638857754452618594558805046012328005 3536338074561364737780764790020963646304906391980941574589540116565963 5912008043135804405094749033491306584238194308163104829560293375548361 3412562272250534072746598730600316164072668409310828998726905765604879 19307621718504684397806867872133104411/1038087172845932305578071414317 6111527593372096033426622851672825805319162689387349227842766001784238 4497824121046633873663953047323290062477234489669591660338577663055134 0023576777028771624408524187917862358273091909269850672881229696343484 536151424181244069758256832418301390481297720123825757263183593750-265 3577349909117272127462186231979302290177624381335349098723128021111755 5199702900818266751418833572251274949932065258247030445108946374321195 7061339649262077539855093133370034999964838931215644185243794895671679 4299144436856264194616208427823181662525797300091115969468850684213358 108558623698944/170352766825999147582042488503402855837429695934907513 8108992463721898529261848180386107530831062028873810447114611427670382 8192381257856406520531638086836568381975475714297822798392267021528755 2687248059463921738159469924212985637693758930795676131147691334524431 890448131510232828343815191919140625*SQRT6);\n aKH := evalf(-2916 3093825537096491269353202009681684725240629411232196600191307627236182 7165136571622432400883269076649373154968775119258240639323209392014802 6472532916966310270515627641772934043467983283642385310008775372831930 7592701146872157684211224177959582075662942626192184346118212750650465 1278644030381722/46874146275846228153786211828432317865477465670088993 4443931341650438565155629925839002167981990317941735469385007899061836 0717479653658310615579835606366537422208821115986314547996868464307358 1946259492818935932558834351286326251271006454639521375699766276397770 90751102034867431661220109954833984375+1058758407478500923884833446549 7137399730029446782400276288215742402272214937903047066187818021935077 8047226753480281555868253232808750543588760988175460510503481311492581 9351452452457088183555999741694995914289514536291231779256235078180301 348383858787133122164191144323544689313256643886283776/599989072330831 7203684635114039336686781115605771391160882321173125613633992063050739 2277501694760696542140081281011079915017183739566826375879421895761491 6790042729102846248262143599163431341848912121508082379936753079696464 9760162688826193858736089570083378914676161410604630312526361740742187 5*SQRT6);\n aKI := evalf(-184621060990196855075156181661547245849 2444444267115651005516006235967530632770917618519362382897665387164158 8709599047829847272304867287364223987428200532802226192293323425316512 2760364639171250833979354940683780372320511267205241311147012576646675 0954467866701317448978721983543198057126952793629364437126524639431198 4280739383198933/14089937733026253360245421909932921501118170946238036 0218589279204198959629423593488515904510643045386219743019773005280970 6076649860306014953428045607282274161517150710279376074624631726551596 6554392216012320294781656574455294967106447830015472787070682053389426 4965087777957890090902366552281689562676393713186917878723824218750000 000+327653829470375072359419413625891662999198519274679571766077034751 2297621748888032221691503830934455620183030692615203283091562780398954 8045035804561671018928993569239056600301406811142533040239386356338165 6431397521855266176909743553794872846036239384384289269567498094476019 2174823837262855207971789322403546719478940631344/18786583644035004480 3272292132438953348242279283173813624785705605598612839231457984687872 6808573938482929906930306737079608102199813741353271237394143043032215 3562009470391680994995089687354622072522954683093726375542099273726622 8085971066872970494275760711859019953450370610520121203155403042252750 235191617582557171631765625*SQRT6);\n aKJ := evalf(67008584722151 6856512672645887761764829466525233611414637178836167899692855180102552 5305466258624193165366299501310020738762027115460241748875041122974018 8395625935876249089572706574409770918245941057289519452361146099267078 082557314952641494391829076002065266453443723953327354085439650000/104 6565622261363471747393953709342614474843680883623768763437261241788714 8409879703921321356449438959933385863781497970744006797046263474478712 5522944957654959124958218139063349982144890039706397239055948735025073 3024414517777784114471792507262948173417733694301650530982423157115702 374385113*SQRT6-136568976418497265725923281586994776481923934136060623 1866266558341083958803809181811518063426163891777246049921977228782512 8204836649124315208539045763492379764025177498081983618057963568050608 6273954651291790076787084630426603247193231175177807204691286691705882 88708161040856098487181993835187/5023514986854544664387490977804844549 4792496682413940900644988539605858312367422578822342510957307007680252 1461511902595712326258220646774978202510135796743803799799447067504079 9142954721905907067474685539281203518517189685333363749464604034862151 2324051217326479225487156311541553713970485424000);\n aL1 := eval f(25711452144848685434607859731637718106441723838038536210021326350921 3940495753541356893220184983172087654063000460915690172737865896429137 4252982720477399248822509977943873704120634174822852732142976844424692 7325561085574382784404751692281943540773897648907655002253676518421227 8927372534780020434537317299368202350937943/16551933034682069166315471 0299291374238822816329315938558527962435108629569913827071254410753895 6083859897037353215181651803796298355058839724691534749692076663710122 2966150715226889702486812638658232135741272065091233422343283690607924 2180521444399190803339657432598960665625077059358130550646322305829437 44000000000000000+1794301137423767612573631451668431951237934899906305 6544420842780347857457289614881050460022669649220378678877840540469694 9046068463995587805927877265848815561354102492833404791525004572405629 1668205898704440412721678869420952574529696832861911650227048676252476 31832962716489209562211123669821857049411173/7115686697535963320587452 8584748137664394460994052715673904036828103186484387679950174285932128 2402741393496616118913355488921840375741318491394063997476390981039124 3342499583427516698671537051086461890804712598584692849047072947669692 9665564854526281137550568900231738607475839034888122321804236800000000 0000*SQRT6);\n aL8 := evalf(1447573279370938110820815176333644575 7470029398694010540128092022755421415157995648181979454314866777272113 0368667605003845569515373978024774064071581259319514584747043023033394 8128155913065713355857904684221934064858241979335370186532285646077786 02914530457788069287489649622692229397227107/3660108194192557018804837 8032113830697767315391369763901845881988914481372743826284545448330303 4962869909920149951354039284479788756534857370370493862049831901076093 7587536997500292152730131535067052018210172065563131402192418001540549 832062282768474548539248265242881282183069512990720000000*SQRT6-299427 0442762627231467330396657531521628503270310679882989148633716643826828 4347503837816367634359548731038084732812580510370371606596140019921082 0230237597054998585932361539963674362154892137661201090245015972313779 1214690834423765518795921704342347506755730671335932302727424942096924 2177127539/18843145700220462374549904832731618041765868876135147085291 2713939287618529846726524883027563987853546576741898109024817179108292 6811022378534842015076170698722935859907135185162743510927194669242354 5264729797284514588546282974265365615775414936810587424733480503522413 14223815627013462425600000000);\n aL9 := evalf(776196474941913376 9147394990621040868131996995983046669356628889816158825422501203482182 8181382510414044743407539080139544940450265672893895288015575745586617 2131765331535432578686549067741611466392662744362921815380093535162938 5091148564394984601228873262214256365203378406363248955571208179761230 551/550301937486912045101092580359562329721649440745113989093001684664 5966805847280373412918381174375865306927197009370500456245588580038978 6688979902196930342645917805693060735840443856555198923017966822019266 7254373189105116408679622599374508398962183162942453255170885382379624 62425479170437939200000000-8889857892595718364809163117341716059537373 8759749320299851361581742197260887371802599984924231837205509669576998 9831138234635971126658426791493916919284088182122064080614195973406466 4036837138886761974887579225172806613503412749348277767205370105151040 161579912690899209220415008157817671/163020792063389696719417680914761 2093714066945315510938971837902915938466001373179881758713721971787057 7545566984100833516259580801720820771202071912773275399875295574366084 9182334478374544592720403115717732243826346756950850513840260510168048 5289436964054379191147858014165473512284160000000*SQRT6);\n aLA : = evalf(-2234945872051433611127408739764937825216482364387345708492381 4588879356661712697696941560707204402182367091181229187298284073612126 0806431608363036445497232741130051731364598986110215624301866861620509 9219940231733519411633723525577593819465264459757994292167089602918008 1292045682053288375000000000/35753451532820308452048611286870339107865 5808142931656180810491216267548802946474695857107931162575859257056099 8070732572212306466496888562941779081977299215587888426372584527643875 2327760279189541736376684150890763106648615714233682488479488482184854 931472246034591491740099648000454376413862351945479*SQRT6+459915916660 8908507269963111893400551051018653394595593566233103088648435973696989 8626461348885451600432551068326390210825678645548334479677371049219569 2208606039739681461834422662511197801488707549842214815282087076500735 7423900826101101354266099015766006121882383292216099811783520708508798 4209619140625/36789561900688659735603840698093988521184554404511509631 3719220072065867699980827017732911845140128574847388166920103062923600 3789063922533572684983373634465959614682700981770300148086073440810784 8318281889852973818186470253529621337204455976831165136037831186571400 8258662506736618192680669040733446162604);\n aLB := evalf(5827787 2355754452702340119960049167965425170479150824534459515208793848115449 6558038433202879634327523396527294219712181296443344683055644252107433 8627926658493281093375020687056479500175869589573687550425917902356375 4795293546837217550833827570143160952315516869179191221620199688782609 9721/45200873936362057186687087814802073824944456277680804130667848660 5548796974067860668310531869139027829571307758078195826063624502296473 7868838138860500333209499851562473980161224460119494315761799096313248 6107222398440816354088890123330756797974746571207089345558200695751165 8446865507812500000*SQRT6+28396034400295483885846603472605555036456811 8476156127962427739302208044133333966524550618761811442034956348899751 2311241489391805687954775585015819878203677752397319061134955224126727 3943046039912231213330550578711878062393821640396602257583080193453011 7329511392196013546601332909863050002026587239/12301869850520297483928 7578196765324121968832205336076522025616914566160584462308959487394353 5048778140961271194385617760214760445450083058382987872273770686297479 6012429184406788490661215729777312420526137418941647959652578928832335 96569877013680702681972143628711990135563729628989166062500000000000); \n aLC := evalf(9256288885614387827205667130141552645643073053245 3703575467367171572686684133959966521766458827389791645151441015569847 9966304043051474402473851229052634922272833555709636264745123940914087 8014720907751116032700433241437735096756265627820605417995359993126524 8121816479825332366525731878223666220324797965875825364117081072588802 7324532604408324448072719582391440865186729077363553665187361794871/22 0269764872560155656079645275695882115020190273424691505553107554421830 3777106789590986615596182260770530287155551389916781992043335717233446 7827659321447060388514803339496498745455098663478824943885695536350466 9333198932970632733457273389853424448158948516738736003064710845410491 2078942990629903259447605978013330729221528037500774632215789707484561 6686140191169919598866579734528000000000000000-43566912704570424972966 6083647967393623316395104573288891473634068474512898220356640631956875 2743533774320960459467278581843706405216026004601240564139324960258595 4456537162994184347630893018846071499398537194159105124099176098874774 5053894411356991190702835943951179505359786575620416695023275890998910 5805675537083166339400799875801557987968056797834377327834102999223866 33179034744129/9882780670962494923604019073954800238549535852004378430 7581464165554536994219754034625888958145635518512262881264904270182342 5859225146495856230699719040335219476197409137439022405730229651123186 9693925731028332056890638554839720803670754415179368004847448665627707 5232518281896172888171181273482743698388163574179107723024850971396562 02973611983058489890156369613984041708640000000000000*SQRT6);\n a LD := evalf(1065023161614411396345428434921547655073430818302319903414 0929497336417998280655943128329836575695939582300342610379994096488546 0052404589413440921077575318822465362848500088107725806664591391439632 7517846889673372171902041842943234368399780853437759324970412910472207 24263773541005636500585281801/3706998294037268192386635071622967719626 2333725738946443952928584796104631319795496767871758760694223356629988 4285109846410040174574172108175309004926175489423405162646695606171752 5523126893692880290401477276069569066546134045001553810342357590939044 623710836739837660441196249000877084911662391500-332049001651316336314 5969505844233330259189039269114121137100187032838424983947984942757681 5208590949482266667325676035625198201210044312087045792127756995827193 2090165224081672460168331856013498781827230090086301665070816128763035 761490920056548530795228137594016884774117791608678284932608/149560166 7892063339137672505294508076989523671658958542885214580198341992710392 7820853655998854471969400722177208307506108692010593648515620725772812 3204829106513823386869848370754680994387706482703558520022434824863493 3484243121743649779051719091037127293971088452215138060295731815171835 5775*SQRT6);\n aLE := evalf(3839008026269537195706470921673516523 1001767316189283452534335314468346955252806509340390546392349013878901 4190223848860185908489052614425621742350368831447759791386421770471132 4278560995514015575956772294201147452301798328287702091353170474774154 50804169725989066466681745600582858984709519337/3591725860710669399162 4562149965504940855550811627528782084125391554552001453333448748074462 2680554846372715953391375832690522211767650329775994785645114526057037 9037520897594897451222218583816570714184763725251293328706562264573844 4041768679649084165528186989695903647032472058772709860918272000-20342 3546411650983754092150770747157531760458505559416432755672526906928638 1397945329670092891617939361592072160001957174493574513740881828059799 3981243950776063300973742275640842095870768103452015338092965339213460 0391255051678059853388861412172090466299240788041089177023413678906321 581/364813768378108144583974170335709866199989534034226248879432073597 9303658613015951702173363550660264375487348555362823426060991692398204 3144174342288068604220882272297468210090043607761501317808528588322278 8317310411017312835979223496051653192767311468142392721354949942811838 1078695543200*SQRT6);\n aLF := evalf(-194922387757999088899350835 9749362929609500293259075545470707603793198854802859239154684416602373 3194659288040914333775456423423111832438829320076889300546288520098072 2748008767149279528417809892806448033028174134912132227404634299693983 26680697312912833020523713609420200289594044675649483617479031/4814197 7340082743549081622811379309872183945603758758903172970534022063301559 3811160494044654632901400916052003001210596358083479743959248402583703 1236057660172434490735024464314950545622174933327991548249874716941067 9537509776841196601901354667221122386152429448487243987692427124725760 00000000000000-4372473861777308879797843409761900944919483505919644307 8859822999247177996198509281382061733972588535933234389142753273392507 3064470722722709015988638200740633821403802808948644641599202469490002 2459048325365709081065039385447200709394007345884653819289639177003309 414257470876588947206553/274428098801474209772349311366416293360503367 3564525172423888978614302378246451456156320027335842995501456860369383 1230365463672077019537315363403530434944743671850435504318526880710341 8215288114182456080189608514301822583249519577859828644845268704592885 777555282890139256520946000000000000*SQRT6);\n aLH := evalf(47849 4701539040219114559776797149173296754112712345510745142708154882211613 2218926926890074425178802920029389928026757326018097363625088303189401 2980062316409904647685627792918207629809103583782273173831553093672698 3036320553404701734459502360476225409590513731944630001707157178612050 61494117/8587928694096255832126000351346984946588937534612838603943814 2282771132826332869688078086520940913255426018273221886716163415281788 0314953569774348819093308738579609508136354853212461452908735522569896 5343182082126246426989254643834266785262575328399327308399859747610556 196634624000000000000000+151192151745239876252371990136272260948543884 9486330964239651140279180388913663523531867129613388809973708067721230 7668268465471453212751575929411862974468047607209950632646160741221536 3777428823598442935726170420542707468558421049059175235487559456585735 6348489634644906655243429712840667/83866491153283748360605472181122899 8690325931114535019916388108230186844007156930547637563681063606010019 7096994324874625333523612112450718454827625186458093150191499102894090 3634029438760618703375966458429512520764125263566939881194011574829837 191399680746092380347759337857760000000000000*SQRT6);\n aLI := ev alf(382147340238992387520778217670681519823718601009147042358215793965 8890525856471971902177955492212902466244347430734747118666238757259374 3888313672036505348512845019874744494883490685733667390863584600794096 4883403510842935831240334730149545773086698233729875307766720352304447 352280995959571383716398303546796596299038877091292271712637930232919/ 8413770171468077535364116227384419885418721053938487458818046195361664 4974129865776064000610601782174207953731789808422493317738760499428836 8790872332005141452615995125118186018280703881839729790859690934671095 1966496659017364414600349174814745087011859187027615513368547807005319 362272524087204445796951159352514058170018155200512000000000000000+183 2445187395156688986517693170312762770931033697792416988015660820959377 9219167010284424062984891070926381230117652982647576942478983283394719 3165124938131263967053912629752923352055583118151483325592450253566549 3073684183599217024563416058846262256419701850863597383650542775327242 826149668089765688707356110761846565860149650750279615673/821657243307 4294468129019753305097544354219779236804159001998237657875485754869704 6937500596290802904499954816200984787591130604258300223473514733626172 3770949820307739373228533477249884609111123886416928389741402978189357 1644936133153491030024499035018737331655774773972467778632189719261803 9105915985851165551895099316583546880000000000000*SQRT6);\n aLJ : = evalf(16440832367227341708798532690981884445673065125135318370990586 8588890431893343512512920521320143106478222875282094041917488402298049 5355802120777312946737470293144612592207079027995971667234466330945620 7155404846575380603055923100193145956040162196525512671089011086023225 838766125799/239679856908252765217406736121894062952579254371954856072 5557559930111547476564347297094540164247976816412561839407125470830458 2498785671688853484115960631349800159640337075363044819107795174487181 1224985681197920995151530955253747508068844667003966171938942483419320 744088541073506304*SQRT6-148028942198789717926933157804430264364951341 4835716032320589107908874158995244061163406866494487113252867029683644 0553412802845111393303681535535933183326791630151480918553445455718755 1581582354189040477452071305755076391077607020567676175924732639581508 129428989744597790144806131627723/490864346948101663165248995577639040 9268823129537635452365941882736868449232003783264449618256379856520012 9266471057929642607784957513055618771935469487373004390726943410330343 5157895327645173497469388770675093342198070335396359674896524993878024 1227201309542060427688838933321185409105920);\n aLK := evalf(-467 8527139361743330805198938527208176797870233225135922547603190201283606 3506041403666962257019512454646952525108946676581999679387365026025695 8741812324264109447443406447297041821515115208817240788634449732668546 3240899027918043236388255220089355500263294471722501030167102184185374 59369/4341680549290783344438945374255841888912227105828172519439018606 1131358521722352310779622092464775142953671700095936461355188474225903 5364275642322993671074434766656588801811650366894336535447796755058653 5864249815353515983194485471875384897905965212710088874693429585766371 107645947904000-174227445323495365644419859821998205953915779031574991 5631380711817201974006848079967122534814630679890591614630445321797101 1945854000287204350678699570623547699791841759703608586978643457338594 4344404194924898064002555835720811793024996046429702656683336996973041 1041685588555159/29240844216667452481404535117563590307867908848519480 8690666662588438567630134377093073963446018151555453069100861641038221 9051335257511882244358317575909714673805607413805304757320139658778608 5449559445958137458346939089326471480818126245271457201055428939080640 0160679308398952448*SQRT6);\n aM1 := evalf(6725673802230822651323 4738081007026882097212803631688575117434358317000998232193028042384616 0925260642411/37308282434364191258140352761576451495725380576434086056 140524583892308007884242471075848266443023974400000);\n aM8 := ev alf(-22553598487711760273401856889983081401977354192153706316067385102 98855378897125/6322938924136902453910485088419682107862042747535148791 137444962250826995715801088);\n aM9 := evalf(-1502706955974881248 92440515191492126097781888158838335016480974104265948574834647675/6367 4951750963501702425903867324901861212307316357900481504197900530106341 74265032704);\n aMA := evalf(204693608956500139128131057786128511 5575792177893835004030610956608209186299835205078125000000/24111278296 9703416106540926494246574487431451260714001209386037189705775851562480 899911609473391);\n aMB := evalf(-4416562324658900236647478447460 03218158385096720438569512292184954756550655098657/1822001291013703373 66005188012855962466596007240017916114507235048378836249907200000);\n \+ aMC := evalf(-244821733157410479301167568020718125633909596111053 7914164459476993806099915118110794726663041517832337344963013238639424 9876247559390639192239494098944002883800666785495379326493/71364216525 6083117788076090644678999481087071684448407792547489746348188956674434 5155058163202462972757265927272882156872828779606813419681685418419807 01790225283611393576140800000);\n aMD := evalf(-12671356151586851 324805938427289130740588314571393874209217862186435551883536562500/670 2085977554280325068268539139373035193944755898922987664282182119136118 66851243007);\n aME := evalf(-19053705984758385635919096498869956 6718064077084051358076851720809750537016084296875/50910440296037809807 24581845742777286877744109966803181609499632016071764657521065984);\n \+ aMF := evalf(-216030383240087048889185535017990927204152335314416 660949022715478078589399524401/222818629229242204357707354917731887145 31075024815023580940580795542849244364800000);\n aMH := evalf(474 5621998266889341000299942193646867639301459975535073165275632864689052 19401/4304715563216235077360026430649407035848047170287034263524341215 4148821401600000);\n aMI := evalf(4481303055313480430731067907870 6310865652516886883903737655831497987195453976513831494750556620233965 363871988553749001354912440161174796784712541/910230707806505705586027 7243261335218496726640961113554115573637352669581557982756264539281030 672778686440752552343004829819746897059467650662400000);\n aMJ := evalf(846576866316095537738451728499686531956386189617851012875616445 803607630859375/177935857133170838349652786504271688283833164264957382 04950702206332616801517568);\n aMK := evalf(192917535741805855763 01967480572947742916873551648262555079215781656345703125/5667384423379 34787379602359435774908270415136782864704954551190557274358677504);\n \+ aML := evalf(5008625330425422069075699699200835325104755984954432 191699846241005638671875/181260158259689799377328794325354594481857066 886774698800745165271666219690176);\n aN1 := evalf(11044272451245 7475011689518308920056730278055846309407306640307947520493029846911480 828229981071807737/659707926276372980709143326223863436299156356643478 2449484724961786512797176033101559836852669644800000);\n aN8 := e valf(-3225597817492455405547718704460101729976248444353378332895594376 48764077125/1016418937136204741176454007269110421145518702985974278410 72610632890094452736);\n aN9 := evalf(-15022491706321206022337551 63283297105805145308077461866629990783957472207033575/7873703079366925 562681265811387714399979758640535709045770046630229367771365376);\n \+ aNA := evalf(126260982509616902626345124317614534462423369401255182 5536867071136085995378295898437500000000/10914570422496862457497737413 319803783381670633201045322235581930398203845132457983123570799207);\n aNB := evalf(778861998724960641175870439680056238323010571863410 08185208456780514632903621/2928885820173777285333159529527648573601401 865355226274988863732130575428400000);\n aNC := evalf(-3543258921 5507465315880864045937967261399517520050772164757320374167639283891935 0088827087706686928792604752864456954192009559010894844864216338290365 7317635963563584517337421/11471871226467385509710585304859166015320972 7315529900944018050692249901774156769951695250823084860030177242915266 23837565632683267125481741392455021551919210154379041177600000);\n \+ aND := evalf(-372074705908231612088603439904041890828195234125304548 34765889438139925740000000/2121584671590465440034273041829494471413087 92526081765991271990570406334873963673);\n aNE := evalf(-28801162 7696787270131694454364094842136371692637735759213282972929624776947656 25/8183905654584267265825266598737746410232999147966183098009097916692 5021937010048);\n aNF := evalf(-253750400590603029813425284205766 8970942507567352978955462460416688276889469/27552556835287349185574370 216758157143443181961280052504922172754855731200000);\n aNH := ev alf(568156922174197380183056102105775966155343133887334620836957603873 3020633857/56050983896044727569792010815747487445938114196445758639639 859575714611200000);\n aNI := evalf(-1021000702312224905689967726 9901011050200232079096536684949506464555680001138165261002824327628102 37570902132714324198032604717509409357918455163/1185196234123054304148 4735993829863565750946147084783273587986506969621850986956713886118855 508688513914636396552529954205494462105546181836800000);\n aNJ := evalf(324424008822063321596721713904694021904791499888280927798129616 74335658203125/6950619419264485873033311972823112823587232979099897736 3088680493486784380928);\n aNK := evalf(1088970878553275163098687 9344519278906642790214230186235782833297756423828125/24352042444208135 395217288882005953089744400408638717791015871469257882599424);\n \+ aNL := evalf(191142703970987920825375799727983372386625054966925031890 1937848300148437500/10384696566961394755992795508223440308856394457054 800452126025093689210503083);\n aO1 := evalf(10203156967062494130 8191879151681504510667796509185032406856359475388996019087846143176477 013121569543/955516255409471001102458407118313402060836521770746788516 5144000733629523001766465181352825157187500000);\n aO8 := evalf(2 2455166560798450102851630177816190335300625809490384410541913411111420 93/5888695757963603785178144544753881271800066109313768140168343635509 560812000);\n aO9 := evalf(11343079727161954117598893397002041492 8672443767560197149229862703216848562247/11860384000644740034346637105 07096757389834286949744457034472337002495421874200);\n aOA := eva lf(3670161835945529534014508525033042393592891238928768222396501046428 36351657789440000000000000000/2652240612666737577171950191436712319361 745963867854013303246409086763534367187289899027704207301);\n aOB := evalf(311827150827255922057933345835609284508248766380477564772627 9426582442363327668224/17375958356987985359764593888555141684207535480 500976191950534348333247780791015625);\n aOC := evalf(38683257384 8977092054262891370872246047736814238302856675240105425504237984235868 6083271015578797673914731672234479363956081628729904093605185625186233 15092215538010090162981/1661577646751150297438902991462217176987526639 5612815576431981514821485359144267498410907953983319394190949218517360 642721943509780833077807178298057538964558050120514667968750);\n \+ aOD := evalf(-40898392440781722328352148369666990327713643477774474671 10402053805894862792294400/6702085977554280325068268539139373035193944 75589892298766428218211913611866851243007);\n aOE := evalf(-45955 2573667314871220447673319039061526192846896539564588904802763541051863 0400/15536633391124819887465154558541190450676709319967050725126646826 2209221333542513);\n aOF := evalf(-459671564933021673417707834443 14802417855786218791001521918580597619367743064/4150320388921391300069 305206047964974219179716858085911896187960271322958984375);\n aOH := evalf(906558569895601286607641808694052130213817873906972859136519 94362268351747/9020427257974193360712434601933849817754799624109479685 248590758706894531250);\n aOI := evalf(-5258585680165066858486586 5304917779691237295787382826773606986778868589006898002075778700169220 4377111790112335378217935909517824063009863648219/57220992424468635699 7647056281697123542920731254737046456710640826546770292486842766270415 3634332237405094791178434647861987658921177630000000000);\n aOJ : = evalf(17502775622870021733819566153995887408044542332875240614995004 7868972875/35794587005642150606517681744808968779917772376193473602359 66440819059712);\n aOK := evalf(107059523602143095695613263396651 34800074748155274645534724248618944875/1393435045864570735657727559013 70733774629976703483874078841427627131744);\n aOL := evalf(-35031 7157914581912452504531162465548756110991909970161562903875248859381760 00/2803868073079576584118054787220328883391226503404796122074026775296 08683583241);\n aP1 := evalf(226754171021148681688130390405675916 1703834487542614922422809751399628129553915447742796974373121407879/16 1061505438567622243443194878872909252723719883661680895623168012366035 087305495643550704410880000000000);\n aP8 := evalf(14667815824384 764604720731977556493579653694501640465538480423897282357953/763535860 2285191865808698972874928043460927756805696202003651640090902528000); \n aP9 := evalf(4977635525247032866212634385755744119729567049171 201219997360100580197645187/236589635798285022917105342890255841345545 63222763548815414803576410359889920);\n aPA := evalf(140484304488 0607882637732112806657258074128319106170572463258665936110798551557500 000000000000/109145704224968624574977374133198037833816706332010453222 35581930398203845132457983123570799207);\n aPB := evalf(122265795 6790103213431252472696539777172663249999529533116463694558147400072664 /550046165146818150040031462125835444261080578679992915224771584309377 8974609375);\n aPC := evalf(4730907654590941123878534886499854759 5889181878018596957350689318059450914233945405078126004626998626915516 007688042888491860577798576868969784183008361647856043251491372696693/ 2800749811149264040456685865444132327959221858289304222266065690728757 3675331242663988098345479702155804990946109921478431720418132630570657 6964233924607402591659644560000000000);\n aPD := evalf(1153740045 748269159478796480967395212179751854806602513177292442252497320755200/ 1631988208915742646180210032176534208779298404046782815317476850541587 1913381821);\n aPE := evalf(7623956445453559631109402846102213430 9167759815278768007650265780350846830800/63936762926439588014259895302 6386438299453058434858054531960774741601733882891);\n aPF := eval f(13894574309133430688354891646743497141234547141255257157294322614999 72115829/5174383420088519603661052099000555352960333150781259860449626 7944065000000000);\n aPH := evalf(-421142478049871693473884211579 82253968628636767026653878664393051311769046581/1368432224024529481684 375264056335142723098491124164029288082509172720000000000);\n aPI := evalf(239714805499988003758280844908209154470678284682564307391939 1446167548003463445393877597738118390702600421694255228628200952383747 860161187031279/289354549346448804723748437349361903460716458669062091 6403317018303130334713612478976103236208175906717440526502082508350950 79641248686080000000000);\n aPJ := evalf(-83380447351344787545521 767124148918942563153960911840766655937288341980125/543017142130037958 830727497876805689342752576492179510649130316355365502976);\n aPK := evalf(-37188604359440314722233083387157545823708645525560940622604 6222491463375/17295484690488732525012279035515591683057102562953634794 755590532143382528);\n aPL := evalf(13642777828763738182781161173 561838093435874808627613343934647836906752000/944063324269217705090254 137111221846259672223368618222920547735789928227553);\n aQ1 := ev alf(466546532723241178503333942513305323245827985724807536181361864458 447933925932870653921126053707/327953766482175132604488104668263814516 49918202437105973651376149306965417003080293870930937500000);\n a Q8 := evalf(4723491269910257197408253207852997193458084742530955434102 2327772536183/24233315876393431214724874669769058731687514853143078766 124870928022884000);\n aQ9 := evalf(10367164276990912692184594376 34102746967174686856076182315999827058358706693/4880816461170674911253 760125543608055102198711727343444586305913590516139400);\n aQA := evalf(126107176528519559643266532933651605948968657536009282253251770 1973500323840000000000000000/98240957898261588276307267446622896340069 04260306971487160739811339517412360448229634177137);\n aQB := eva lf(1593585599185410121376197356584779060871239468221379968652311452262 0899139559424/71506001469086359505204090076358607753940475228399078979 220305960219126669921875);\n aQC := evalf(10657723851600378741841 9600981060033971317382474418007429340663573433616773277359424055465412 3695611605944223229904518029927614330580356951033977912552385182206284 514559/621107102700166492076592399507853909647260785717514909291648827 3463307559114285281145171516601762566202268932421307610541597095747262 930706219153299391393782210410156250);\n aQD := evalf(19893647189 6683904802218217623982545469417973212849595160688218787298733037977600 /275806007306760507204455495437834281283701430283906295788653587741528 2353361527749);\n aQE := evalf(7802974809496486749416392541153380 9400547896738615365523971243063975724441600/63936762926439588014259895 3026386438299453058434858054531960774741601733882891);\n aQF := e valf(47089048172413134997528432836773327900280211171315979008137365046 2846095736/17079507773339058848021832123654176848638599657852205398749 744692474580078125);\n aQH := evalf(-8017167945338692474386475317 007433013318192540440906434781184327080792127/334089898443488642989349 429701253696953881467559610358712910768840996093750);\n aQI := ev alf(379440546633543696948683315777242581367120938370727641143789276793 2878706597258190100164705439305095301720467892671832287937845207567497 514493/706432005240353527157588958372465584620889791672514872168778568 9216626793734405466250252041523866959759376285405474873903688467803923 0000000000);\n aQJ := evalf(-233588086623589610967302059384622582 0564112415275796854849718353742375/13257254446534129854265808053632951 3999695453245161013342072831141446656);\n aQK := evalf(-152960233 160113384609842819678797535294565646547801727288480414604125/422253044 2013850714114325936405173750746362930408602244813376594761568);\n \+ aQL := evalf(10373426455351662576622889624826508120400531851220415524 405102038745088000/944063324269217705090254137111221846259672223368618 222920547735789928227553);\n aR1 := evalf(64250875282710999263292 9585199870482143280706874928077245198394371913249038165677118360380512 78775223279472574793320679/3419591173062699310255866115599253791530194 6385082933308977514635102079195031329287723999854767036942379866035200 00000000);\n aR8 := evalf(222348235080065777289456859144064691738 8668944690361370691106216132811392499592441721202793/12472604243778136 6075433873943998883328379229876365972326898281264432363526172519186946 4576000);\n aR9 := evalf(1241307821368539744905540773139905143998 5697734732346757085870701455988697074352942605382553463367/61546429065 7408094587098411600275532965555190451700059880001606150278993422881289 38831260065792000);\n aRA := evalf(273497285700751964846476316265 3058717810972032092016948043929880669723752733216405366579286625000000 0000000000/20572271987618184593178936958872085377956018323554433050227 6475856876964169921820909017383269517865682906837457);\n aRB := e valf(29384223718432424813936072759758106384165271793214191366327380829 559952125029694605974522191858559/132082165119229462793488932841512959 794481500793005301870120878550487236504362054850146000566406250);\n \+ aRC := evalf(147930072861410678874559763587715639493268296275126547 7848899939674020272272430795006240725669690120898844713247377212533356 8710755531174588849827082196300693860215971616328390339253755605669/95 1167368070302556967244447666164744339010758665620815041118168791095440 2299641768304299822582318038425720818514026053472491635692846468054683 0137357279759429781449684222880875237920000000000);\n aRD := eval f(10950630983299038232297656995581558091938197315611766049380531473647 78610638106378476889915392000/1732838453094668456641896441272868125519 6156605742588455678952837710486932298180475780086042156833);\n aR E := evalf(22643686664198250931888753811048017750114343290720364765591 553524006236766954692145692037375/217136719151367883667281882064278858 619682539197025973487121443934414211393865389232784019462);\n aRF := evalf(865194495976831180299612546078734600556176564030906784364409 666041223394460306006987488382548603/376897956217255918165595209029446 51386750181809191520769371089115416275557505901418168070000000000);\n \+ aRH := evalf(-815851446446078225835079578775135286223813340179334 426018934783202022915053187926766080958082611/328600583770705457378572 4336239416712924921315711790909908897153498076298264835684832528000000 0000);\n aRI := evalf(2283261768824642109503807855489304349836877 5632741065851780405581732011329314047391687503657558982561919003969962 4473549925170585049834800992406072675877904145000964496039330011822341 9/32777075344216878077721966728442567149478736482438099214464000420337 0668847550879413781663578240365122060887801283078740424501477275391874 63608846309822169873912593294551531520000000000);\n aRJ := evalf( -126961466422949927922079550931908696947438487034244039280864970063025 266043269361725023193588625/865617486939533081827894424639575717584475 101332940162751438476547165779526334018474129934516224);\n aRK := evalf(-14537494230026498493249257398574811122781042572001577452138355 467562423750388023689292255442875/569180051412472342869836345281024159 57487167003291680791272800068628581684629417909392434266112);\n a RL := evalf(-101612202727188278351596381542424836532107508186863979877 043290571591433212732952554674846224000/738509738649613913688624208590 810739737759432541424875041852805939342283743895483742216401172409);\n aRM := evalf(-11069967147037708058951931197098322757226586427213 9133271958560164457877727876019027397503452032/12595280657650768284021 4512692347692727211447597814324199099975141370284333864572439438899856 09375);\n aS1 := evalf(-55857142711467061786411703861346764471553 8638426732772427573818795154103361/91810938973590519734861607217003019 049024250494194606074681612156503013195776);\n aS8 := evalf(13169 10833601519088693218702357900833196116789140625/\n 442043 9963472550565232420607397542739995601455914418176);\n aS9 := eval f(142698794677197642653418320637229646162284884395963359375/\n \+ 4451589755480155662936573014022421188335006960404360593408);\n \+ aSA := evalf(14250556328848031496382863781561058392986449154815673 8281250000000000000/\n 7594853109003067338050023476367198 583770760143535377363246317959607241167);\n aSB := evalf(13465592 48108390398828213036554868662602157290783629/\n 407610317 51487067180878484586742664098219374493043608);\n aSC := evalf(419 9535858350819722634616299226732711002654446947997562693858624122353784 3119621182250648663810293093189394413098325108660699412264907818890048 63621/1596529656739107451224393062057215709364668088284569354309579066 2768118979317824285244747452570003942128847988697383841623783304466617 7390009746522112);\n aSD := evalf(2145085799580162030574792125556 9329406610394890000000000000/\n 1919183285269672643438871 312728531675659960737496307019545469);\n aSE := evalf(67828052597 198445423908718515586964773592276112060546875/\n 35592079 49700514920649101368549673912791588501866176994968);\n aSF := eva lf(21625978600958682217468848064156580694685242478697/\n \+ 4984802845986379257213925850261011466012609267945472);\n aSH := e valf(-214265192783445276830405408385463656194344690061465/\n \+ 44694338815224270061176709946379818561173725526032384);\n aSI := evalf(200416671522329247230264763042929152445692539014815196410266 2690681300628243916915601168387937773922757512940859652389544027408955 020413100471639723616603/451660176696275450155433571971167355768373780 2547896687257470883395176871708411541729723678187401842120066927384845 93870567225762491431984825846552273616896);\n aSJ := evalf(-71691 2933396659551324066315399423700530347849090576171875/\n 2 7729700973178370024811788881106275420485659818842646380544);\n aS K := evalf(-189617065355963384637110846764300902215783937713623046875/ \n 558862635291651381182419477632177315530989304733814279 3728);\n aSL := evalf(-157349418783621049529989882790700369975091 7399108886718750/\n 4861400983361925835202735266243902681 1788089947060710129507);\n aSM := evalf(1264675919386056109072877 709034273986243620181732850/\n 17495269254381150072614134 320113792634146195935038149);\n aSN := evalf(41956998473885686826 0381599620842860505940333791825/\n 3196126989683661069213 878876717295545568748121591532);\n end if;\n \n xstart := evalf( x0);\n xend:= evalf(xn);\n \n sgn := sign(xend-xstart);\n h := sgn*hstrt;\n\n eps := evalf(t);\n safety := 0.9;\n pgrow := -0. 11111111111111111111;\n pshrink := -0.125;\n errcontrol := 0.00000 01983592905; #(5/safety)^(1/pgrow)\n tiny := Float(1,-3*saveDigits); \n \n xk := evalf(x0);\n yk := evalf(y0);\n \n if ymaxtemp<>0 then\n ymax := abs(evalf(ymaxtemp))\n else\n ymax := max( abs(yk),tiny)\n end if;\n \n soln := NULL;\n finished := false ;\n f1 := fn(xk,yk);\n\n for k from 1 to maxstps do\n if errc ntl=0 then yscale := max(abs(yk),abs(f1*h),tiny)\n elif errcntl=1 then yscale := max(abs(yk),tiny)\n elif errcntl=2 then yscale := abs(ymax)\n else yscale := max(abs(f1*h),tiny) end if;\n \n if abs(h)>=hmx then\n h := sgn*hmx;\n maxstepsiz e := true;\n else\n maxstepsize := false;\n end if; \n if abs(h)<=hmn then\n h := sgn*hmn;\n minsteps ize := true;\n else\n minstepsize := false;\n end if ;\n if (xk+h-xend)*(xk+h-xstart)>0 then \n h := xend-xk; \n laststep := true;\n else\n laststep := false; \n end if;\n\n # Do step.\n do\n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + a32*f2; \n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f 3;\n f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53 *f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t := a 61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n \+ t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c 7*h,yk + t*h);\n t := a81*f1 + a86*f6 + a87*f7;\n f8 : = fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a96*f6 + a97*f7 + a9 8*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + \+ aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t *h); \n t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9 + aBA* fA;\n fB := fn(xk + cB*h,yk + t*h); \n t := aC1*f1 + a C6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn (xk + cC*h,yk + t*h);\n t := aD1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn(xk + cD*h,yk \+ + t*h);\n t := aE1*f1 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9 + aE A*fA + aEB*fB + aEC*fC\n \+ + aED*fD;\n fE := fn(xk + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 + aF7*f7 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + aFC*fC\n \+ + aFD*fD + aFE*fE;\n fF := fn(xk + h, yk + t*h);\n\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC *fC + bD*fD + bE*fE + bF*fF;\n yout := yk + t*h;\n\n # error estimate\n t := aG1*f1 + aG6*f6 + aG7*f7 + aG8*f8 + aG9 *f9 + aGA*fA + aGB*fB + aGC*fC\n \+ + aGD*fD;\n fG := fn(xk + h,yk + t*h);\n\n yerr := (e1*f1 + e8*f8 + e9*f9 + eA*fA + eB* fB + eC*fC + eD*fD + eE*fE\n \+ + eF*fF + eG*fG)*h;\n \n err := a bs(yerr/yscale)/eps;\n if err<=1.0 or minstepsize then break e nd if;\n \n # Shrink, but not too much.\n if p rntflg then\n print(`reducing step-size and repeating step` );\n end if;\n htemp := safety*h*err^pshrink;\n \+ if h>=0 then\n h := max(htemp,0.1*h)\n else\n \+ h := min(htemp,0.1*h)\n end if;\n if maxstepsi ze then maxstepsize := false end if;\n if abs(h)<=hmn then\n \+ h := sgn*hmn;\n minstepsize := true;\n en d if;\n end do;\n\n if outpt='points' or outpt='rkstep' then \n soln := soln,[xk,yk];\n else # 10 or 12 extra stages n eeded for interpolation\n t := aH1*f1 + aH8*f8 + aH9*f9 + aHA* fA + aHB*fB + aHC*fC + aHD*fD + aHE*fE\n \+ + aHF*fF;\n fH := fn(xk + h,yk + t*h);\n t := aI1*f1 + aI8*f8 + aI9*f9 + aIA*fA + aIB*fB + aIC*fC + aID*fD + aIE*fE\n \+ + aIF*fF + aIH*fH;\n fI := f n(xk + cI*h,yk + t*h);\n t := aJ1*f1 + aJ8*f8 + aJ9*f9 + aJA*f A + aJB*fB + aJC*fC + aJD*fD + aJE*fE\n \+ + aJF*fF + aJH*fH + aJI*fI;\n fJ := \+ fn(xk + cJ*h,yk + t*h);\n t := aK1*f1 + aK8*f8 + aK9*f9 + aKA* fA + aKB*fB + aKC*fC + aKD*fD + aKE*fE\n \+ + aKF*fF + aKH*fH + aKI*fI + aKJ*fJ;\n fK := fn(xk + cK*h,yk + t*h);\n t := aL1*f1 + aL8*f8 + aL9*f9 + aLA *fA + aLB*fB + aLC*fC + aLD*fD + aLE*fE\n \+ + aLF*fF + aLH*fH + aLI*fI + aLJ*fJ + aLK*fK;\n fL : = fn(xk + cL*h,yk + t*h);\n t := aM1*f1 + aM8*f8 + aM9*f9 + aM A*fA + aMB*fB + aMC*fC + aMD*fD + aME*fE\n \+ + aMF*fF + aMH*fH + aMI*fI + aMJ*fJ + aMK*fK + aML*fL;\n fM \+ := fn(xk + cM*h,yk + t*h);\n t := aN1*f1 + aN8*f8 + aN9*f9 + a NA*fA + aNB*fB + aNC*fC + aND*fD + aNE*fE\n \+ + aNF*fF + aNH*fH + aNI*fI + aNJ*fJ + aNK*fK + aNL*fL;\n fN := fn(xk + cN*h,yk + t*h);\n t := aO1*f1 + aO8*f8 + aO9*f9 + \+ aOA*fA + aOB*fB + aOC*fC + aOD*fD + aOE*fE\n \+ + aOF*fF + aOH*fH + aOI*fI + aOJ*fJ + aOK*fK + aOL*fL;\n f O := fn(xk + cO*h,yk + t*h);\n t := aP1*f1 + aP8*f8 + aP9*f9 + aPA*fA + aPB*fB + aPC*fC + aPD*fD + aPE*fE\n \+ + aPF*fF + aPH*fH + aPI*fI + aPJ*fJ + aPK*fK + aPL*fL;\n \+ fP := fn(xk + cP*h,yk + t*h);\n t := aQ1*f1 + aQ8*f8 + aQ9*f9 \+ + aQA*fA + aQB*fB + aQC*fC + aQD*fD + aQE*fE\n \+ + aQF*fF + aQH*fH + aQI*fI + aQJ*fJ + aQK*fK + aQL*fL;\n \+ fQ := fn(xk + cQ*h,yk + t*h);\n if saveDigits<=27 then ## use the first interpolation procedure\n soln := soln,[xk,yk,f1 ,f8,f9,fA,fB,fC,fD,fE,fF,\n fH,fI,fJ,fK,fL,f M,fN,fO,fP,fQ];\n else ## 2 more stages are needed for the 2nd interpolation procedure\n t := aR1*f1 + aR8*f8 + aR9*f9 + \+ aRA*fA + aRB*fB + aRC*fC + aRD*fD + aRE*fE\n + \+ aRF*fF + aRH*fH + aRI*fI + aRJ*fJ + aRK*fK + aRL*fL + aRM*fM;\n \+ fR := fn(xk + cR*h,yk + t*h);\n t := aS1*f1 + aS8*f8 + aS9*f9 + aSA*fA + aSB*fB + aSC*fC + aSD*fD + aSE*fE\n + aSF*fF + aSH*fH + aSI*fI + aSJ*fJ + aSK*fK + aSL*fL + aSM*fM + aSN*fN ;\n fS := fn(xk + cS*h,yk + t*h);\n soln := soln ,[xk,yk,f1,f8,f9,fA,fB,fC,fD,fE,fF,fH,fM,fN,fO,fP,fQ,fR,fS];\n \+ end if;\n end if;\n \n if err>errcontrol then\n \+ hnext := safety*h*err^pgrow;\n inc := false;\n else\n \+ hnext := 5*h;\n inc := true;\n end if;\n \n x k := xk + h;\n yk := yout;\n f1 := fn(xk,yk);\n if prnt flg then\n print(`abs err estimate -> `,evalf(abs(yerr),5),`ab s err bound -> `,evalf(abs(yscale)*eps,5));\n print('step',k,` `,h,` `,[xk,yk]);\n if laststep then\n print(` last step`);\n elif inc then\n print(`increasing st ep-size by a factor of 5`)\n elif maxstepsize then\n \+ print(`used maximum step-size`)\n elif not minstepsize then \n print(`using error to adjust step-size`)\n else \+ \n print(`used minimum step-size`)\n end if;\n \+ print(``);\n end if;\n \n if (xk-xend)*(xend-xstart )>=0 then\n finished := true;\n break;\n end if; \n\n if abs(yk)>ymax then ymax := abs(yk) end if;\n h := hne xt;\n end do;\n\n if not finished and k>=maxstps then\n error \"reached maximum number of steps before reaching end of interval\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt='rkstep' then\n \+ eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c3_=c3,c4_=c4,c6_=c6,\n \+ c7_=c7,cC_=cC,a31_=a31,a32_=a32,a41_=a41,a43_=a43,a51_=a51,\n \+ a53_=a53,a54_=a54,a61_=a61,a64_=a64,a65_=a65,a71_=a71,a74_=a74, \n a75_=a75,a76_=a76,a81_=a81,a86_=a86,a87_=a87,a96_=a96,a97_= a97,\n aA1_=aA1,aA6_=aA6,aA7_=aA7,aA8_=aA8,aA9_=aA9,aB1_=aB1,a B6_=aB6,\n aB7_=aB7,aB8_=aB8,aB9_=aB9,aBA_=aBA,aC1_=aC1,aC6_=a C6,aC7_=aC7,\n aC8_=aC8,aC9_=aC9,aCA_=aCA,aCB_=aCB,aD1_=aD1,aD 6_=aD6,aD7_=aD7,\n aD8_=aD8,aD9_=aD9,aDA_=aDA,aDB_=aDB,aDC_=aD C,aE1_=aE1,aE6_=aE6,\n aE7_=aE7,aE8_=aE8,aE9_=aE9,aEA_=aEA,aEB _=aEB,aEC_=aEC,aED_=aED,\n aF1_=aF1,aF6_=aF6,aF7_=aF7,aF8_=aF8 ,aF9_=aF9,aFA_=aFA,aFB_=aFB,\n aFC_=aFC,aFD_=aFD,aFE_=aFE,b1_= b1,b8_=b8,b9_=b9,bA_=bA,bB_=bB,\n bC_=bC,bD_=bD,bE_=bE,bF_=bF \};\n return subs(eqns,eval(rk89step));\n elif outpt='rkinterp' then\n Digits := Digits+3;\n if saveDigits<=27 then # use t he first interpolation procedure\n d12 := evalf(-28.3269010754 9798096690906467156557560246);\n d82 := evalf(-.13528772519704 76367599723128957768440819e-1);\n d92 := evalf(-1.455702711708 433893360889952963677129273);\n dA2 := evalf(-.852079194235058 8325316811661249319358110);\n dB2 := evalf(-1.5001953639882222 20268242336906764975318);\n dC2 := evalf(-1.194515595127319561 381305768593044511548);\n dD2 := evalf(-.507569755324820118107 4098453886273625940);\n dE2 := evalf(-.86541318181133554235087 31936492858938138);\n dF2 := evalf(-.1970131900633844007334057 633668811920145);\n dH2 := evalf(-.454184982971113673096500162 7668703429520);\n dI2 := evalf(-.16421638005363307882900652048 13343796028);\n dJ2 := evalf(-.6748844193125564745929227754653 506820255);\n dK2 := evalf(1.778873344420799933681245486496441 730823);\n dL2 := evalf(.4134694024574781779455481610866056129 998e-1);\n dM2 := evalf(31.31247017428404500084714290987346601 228);\n dN2 := evalf(-2.73095872962060711671505159043464145476 0);\n dO2 := evalf(3.159813308843413258842148106168068986690); \n dP2 := evalf(.9128020953320920409453895709005641365133);\n \+ dQ2 := evalf(1.731857489108072590441870089449361718970);\n \+ d13 := evalf(257.5220844783513822655991530565674934511);\n \+ d83 := evalf(.4916573392696415374272244679017599493338);\n d 93 := evalf(52.90257641362051900920717423116225499945);\n dA3 \+ := evalf(30.96592753514428792162712738493029801871);\n dB3 := \+ evalf(54.51951091415031705577508793820914945821);\n dC3 := eva lf(43.41061676962890600957969169570673103303);\n dD3 := evalf( 18.44590076692263941141687424224329073812);\n dE3 := evalf(31. 45050607647596882232093808213253876385);\n dF3 := evalf(7.1597 76002331775566615895079547204997740);\n dH3 := evalf(16.701271 13669635686632210799083287987501);\n dI3 := evalf(6.0195793700 77226689069574595580813231251);\n dJ3 := evalf(24.738825239927 91864853900738883021962605);\n dK3 := evalf(-65.20707180707839 471257988195976321618762);\n dL3 := evalf(-1.51562949102782259 3270509776882653001566);\n dM3 := evalf(-355.31572752978281939 86043583116718624296);\n dN3 := evalf(87.056557315835564092577 44115400905155577);\n dO3 := evalf(-113.1719939045261456697649 954642660064729);\n dP3 := evalf(-32.8200580263398913410276308 0315296130729);\n dQ3 := evalf(-63.354308599677430180829920991 91698629861);\n d14 := evalf(-1150.934922587486676595644173070 427468166);\n d84 := evalf(-4.43646495069982853178150857552334 8010080);\n d94 := evalf(-477.36585486427408855030902761415206 46170);\n dA4 := evalf(-279.4207290379426863235594737603647308 773);\n dB4 := evalf(-491.956246720996899861292544531605933133 0);\n dC4 := evalf(-391.7152545161095434284638812068789918804) ;\n dD4 := evalf(-166.4463960979508832639844199618192084686); \n dE4 := evalf(-283.7933185281612362330622863936780662583);\n dF4 := evalf(-64.60616521334211261463809724329632268974);\n \+ dH4 := evalf(-156.7717275533304690372380410971656210197);\n \+ dI4 := evalf(-55.91040567458732377701366184031559718280);\n \+ dJ4 := evalf(-229.7764793920052818752970771400909901114);\n \+ dK4 := evalf(605.6492677392717373735460695165065607758);\n dL 4 := evalf(14.07730581923479579079647554513213783817);\n dM4 : = evalf(1749.514715230440391833447109626875135263);\n dN4 := e valf(-458.0573888328072551306550581455948332526);\n dO4 := eva lf(972.1689485848533047356437130956188610315);\n dP4 := evalf( 285.2155813990437864609136220241493488672);\n dQ4 := evalf(584 .5655351968502690285922607726311318915);\n d15 := evalf(2904.4 20880778592699327677577124945314980);\n d85 := evalf(17.319446 16187202911483010888269379627330);\n d95 := evalf(1863.5810977 23678565157175620323654474102);\n dA5 := evalf(1090.8262156608 02050077745313656207403448);\n dB5 := evalf(1920.5403003886889 41881662910323116196240);\n dC5 := evalf(1529.2110580757710982 68564306266884477941);\n dD5 := evalf(649.78748352364354597337 21670731086552039);\n dE5 := evalf(1107.8962994111225625784519 65902514345412);\n dF5 := evalf(252.21499833126845809777776341 91985258330);\n dH5 := evalf(651.54667338934662433334175422228 85186689);\n dI5 := evalf(228.26886560527597090556376451923516 01670);\n dJ5 := evalf(938.12262065963373682370011139463109374 53);\n dK5 := evalf(-2472.721663050785177698018480246106083819 );\n dL5 := evalf(-57.47428571415020809167337188498904022101); \n dM5 := evalf(-4695.147622413440114700018050785654357371);\n dN5 := evalf(1030.528220479689242604149818460454461893);\n \+ dO5 := evalf(-3550.940444875616705777455788680906685775);\n \+ dP5 := evalf(-1042.591339563443951766186011126489506480);\n \+ dQ5 := evalf(-2365.388804571949367110661478844786750241);\n \+ d16 := evalf(-4344.528637462060406744624584680228201053);\n d8 6 := evalf(-34.64102686818872098410895454499673069594);\n d96 \+ := evalf(-3727.391873500693602119215981342624059544);\n dA6 := evalf(-2181.786870784446576299842227492434297046);\n dB6 := e valf(-3841.317298798240146027659208409442283399);\n dC6 := eva lf(-3058.610584589748864431933436681171041696);\n dD6 := evalf (-1299.655050454701135142040066484500460116);\n dE6 := evalf(- 2215.929142096727917414601771920948508172);\n dF6 := evalf(-50 4.4610810354733798936380034445962688417);\n dH6 := evalf(-1412 .320009571548049765391447883774876836);\n dI6 := evalf(-482.20 12255868892821374987074119699671610);\n dJ6 := evalf(-1981.715 185876861586680601839010188195151);\n dK6 := evalf(5223.443036 336624954800506019083865201996);\n dL6 := evalf(121.4102104446 333031674235730516112272387);\n dM6 := evalf(7343.556109316445 935223022259185806343012);\n dN6 := evalf(-1166.91543485787862 4822018690873833960735);\n dO6 := evalf(6713.26417467128472947 2235882859087918016);\n dP6 := evalf(1892.18169633644090974700 3099385300652954);\n dQ6 := evalf(4957.61819437802846005298408 6615037507229);\n d17 := evalf(3822.15747525329498213100023233 1973581223);\n d87 := evalf(37.3828130181514718828827239773911 3810538);\n d97 := evalf(4022.40943903460673874930972670866541 3881);\n dA7 := evalf(2354.47208151013389934576196083116541027 0);\n dB7 := evalf(4145.351893602041132240186825905030942458); \n dC7 := evalf(3300.695098159947454006902079837487651010);\n \+ dD7 := evalf(1402.520829538696240143275819971514339950);\n \+ dE7 := evalf(2391.316663206240712062204317538870339080);\n \+ dF7 := evalf(544.3884310658628635840232552836960844226);\n d H7 := evalf(1667.138515616290965031624809891759454368);\n dI7 \+ := evalf(550.0371698613109364952968030491777978723);\n dJ7 := \+ evalf(2260.502368039869828842019362146485043259);\n dK7 := eva lf(-5958.275657929989312761065969519172044923);\n dL7 := evalf (-138.4901675933193250049116011300621399397);\n dM7 := evalf(- 6685.313457191056010094751616991673574687);\n dN7 := evalf(648 .4882950191960598212061502167065649832);\n dO7 := evalf(-6928. 875337321575454509723879737483510177);\n dP7 := evalf(-1796.36 0453156949035787162250294206098163);\n dQ7 := evalf(-5639.5459 99732754146178078750017326392993);\n d18 := evalf(-1828.450847 963912086611128480846949392101);\n d88 := evalf(-20.7750301727 1466649882774316118528416602);\n d98 := evalf(-2235.4036712641 27820837729037807288709372);\n dA8 := evalf(-1308.468373164874 203463640310982951825568);\n dB8 := evalf(-2303.72740072520062 2735225098094654082708);\n dC8 := evalf(-1834.3199646829332769 92160596708277754909);\n dD8 := evalf(-779.4333866041422479301 856382011190453387);\n dE8 := evalf(-1328.94428802088039980138 7165802578257268);\n dF8 := evalf(-302.53705293870224464535388 58257877493512);\n dH8 := evalf(-1017.673390248052278400509234 341149434655);\n dI8 := evalf(-321.962058570209219897898634667 9238877457);\n dJ8 := evalf(-1323.1760246320430521296318520451 98788472);\n dK8 := evalf(3487.6528377884105537846680285417442 20262);\n dL8 := evalf(81.064665977612294755324767868121363936 72);\n dM8 := evalf(3285.682573893041315538969260935086785998) ;\n dN8 := evalf(-131.2788560071460746781394967167667482200); \n dO8 := evalf(3717.788457472750001241039636185655260178);\n \+ dP8 := evalf(850.9940020538469208530391946403353379361);\n \+ dQ8 := evalf(3312.967807809277108448776287030887991565);\n \+ d19 := evalf(367.1554574315021425912203561515068047982);\n d 89 := evalf(4.674158442717667575904712851691441884529);\n d99 \+ := evalf(502.9417938773550941496020410671302902552);\n dA9 := \+ evalf(294.3913170095037265437261593264381545568);\n dB9 := eva lf(518.3138984780918128529461223609665108621);\n dC9 := evalf( 412.7022718276975364384031516482215784580);\n dD9 := evalf(175 .3641325304376264979817562401261871246);\n dE9 := evalf(298.99 81777216614016801117759308073585656);\n dF9 := evalf(68.067584 42573064372308655760592131398740);\n dH9 := evalf(251.83285221 35679646449465513799759499414);\n dI9 := evalf(75.912291375075 32480130986827669701519861);\n dJ9 := evalf(311.97876038079099 28458652100409969677860);\n dK9 := evalf(-822.3196224208751607 207370309035710798363);\n dL9 := evalf(-19.1134463832287858414 8388848903955641263);\n dM9 := evalf(-674.28906147993274340291 17465686419357976);\n dN9 := evalf(-7.090434387268304770405112 504539894769146);\n dO9 := evalf(-813.393617936013142750816716 3638739057876);\n dP9 := evalf(-157.53223113793083020752541339 68373379435);\n dQ9 := evalf(-788.5942819688829666512243546539 758628716);\n eqns := \{SOLN_=[soln],\n d12_=d12,d82_= d82,d92_=d92,dA2_=dA2,dB2_=dB2,dC2_=dC2,dD2_=dD2,\n dE2_=dE2,d F2_=dF2,dH2_=dH2,dI2_=dI2,dJ2_=dJ2,dK2_=dK2,dL2_=dL2,\n dM2_=d M2,dN2_=dN2,dO2_=dO2,dP2_=dP2,dQ2_=dQ2,\n d13_=d13,d83_=d83,d9 3_=d93,dA3_=dA3,dB3_=dB3,dC3_=dC3,dD3_=dD3,\n dE3_=dE3,dF3_=dF 3,dH3_=dH3,dI3_=dI3,dJ3_=dJ3,dK3_=dK3,dL3_=dL3,\n dM3_=dM3,dN3 _=dN3,dO3_=dO3,dP3_=dP3,dQ3_=dQ3,\n d14_=d14,d84_=d84,d94_=d94 ,dA4_=dA4,dB4_=dB4,dC4_=dC4,dD4_=dD4,\n dE4_=dE4,dF4_=dF4,dH4_ =dH4,dI4_=dI4,dJ4_=dJ4,dK4_=dK4,dL4_=dL4,\n dM4_=dM4,dN4_=dN4, dO4_=dO4,dP4_=dP4,dQ4_=dQ4,\n d15_=d15,d85_=d85,d95_=d95,dA5_= dA5,dB5_=dB5,dC5_=dC5,dD5_=dD5,\n dE5_=dE5,dF5_=dF5,dH5_=dH5,d I5_=dI5,dJ5_=dJ5,dK5_=dK5,dL5_=dL5,\n dM5_=dM5,dN5_=dN5,dO5_=d O5,dP5_=dP5,dQ5_=dQ5,\n d16_=d16,d86_=d86,d96_=d96,dA6_=dA6,dB 6_=dB6,dC6_=dC6,dD6_=dD6,\n dE6_=dE6,dF6_=dF6,dH6_=dH6,dI6_=dI 6,dJ6_=dJ6,dK6_=dK6,dL6_=dL6,\n dM6_=dM6,dN6_=dN6,dO6_=dO6,dP6 _=dP6,dQ6_=dQ6,\n d17_=d17,d87_=d87,d97_=d97,dA7_=dA7,dB7_=dB7 ,dC7_=dC7,dD7_=dD7,\n dE7_=dE7,dF7_=dF7,dH7_=dH7,dI7_=dI7,dJ7_ =dJ7,dK7_=dK7,dL7_=dL7,\n dM7_=dM7,dN7_=dN7,dO7_=dO7,dP7_=dP7, dQ7_=dQ7,\n d18_=d18,d88_=d88,d98_=d98,dA8_=dA8,dB8_=dB8,dC8_= dC8,dD8_=dD8,\n dE8_=dE8,dF8_=dF8,dH8_=dH8,dI8_=dI8,dJ8_=dJ8,d K8_=dK8,dL8_=dL8,\n dM8_=dM8,dN8_=dN8,dO8_=dO8,dP8_=dP8,dQ8_=d Q8,\n d19_=d19,d89_=d89,d99_=d99,dA9_=dA9,dB9_=dB9,dC9_=dC9,dD 9_=dD9,\n dE9_=dE9,dF9_=dF9,dH9_=dH9,dI9_=dI9,dJ9_=dJ9,dK9_=dK 9,dL9_=dL9,\n dM9_=dM9,dN9_=dN9,dO9_=dO9,dP9_=dP9,dQ9_=dQ9\}; \n return subs(eqns,eval(rk89interp1));\n else # use the \+ 2nd interpolation procedure\n d12 := evalf(-232472720305518486 6065215820329447943947077872225064099300716542718326074108155027154162 8889102031098061613714220183440182844899711841608325780574430045703109 071594891108614077591113/814487450818253046530409253557372158844702694 7942942349714236695199137677701319424624379634895074555202632073266610 02120811587205348517600062563867363630293524002932114371981759080); \+ d82 := evalf(215026835848994534275870702852845605922502309 7291323638494616245700702439756924611922559574499344959598989938126601 2261844074736938187307628300794672440627960877874430545765625/17324731 2226793781378303121920601865310630391288146156702192384005373180505208 5462791351066116796208924120257129726667287154285079325304087398411203 120948412032414655458133122088);\n d92 := evalf(16310025448337 5603793043763078566347539727971766314522672886255640072964240400441020 8542026924955266972651954249110094856945371683263948596307958724964272 2538288548033041273731140625/12212770146236583190041674339471198131778 2615232523344026187421868553628827779191220899688809098423943378111377 3091373831017625431971099014665804516994403487270729561122800220854867 8);\n dA2 := evalf(3964800975744404831550290560229347893070430 5897663710706200755959222769575855061871661723578082459621193835602122 3134087115349936612504845123475867357241394507165997724230548000000000 0000000000000000000/50719348505347441126177215677398819102933838769351 1960286693807698197620514073182504003120301319783017501106739405809458 4451912944430579517054136405989560468014509350258101500522748695949149 211050732031);\n dB2 := evalf(12608102895176047612886447209273 2869626996874995714464258698626958308649349730012700545375487253843260 5324404273332932379568332980768823770295677068206113360491422669345099 0306705408/91608160209773814479490016374232651644243369113005902885114 9665229296166407229220073128270208203276468444435707379137164864062325 9457310970958723855932137093123525182377146328123885);\n dC2 : = evalf(64130723543303567804216656062387106883843260377877859073467909 9585446109864813687011162339920481131841166240593874740882866438844578 2702950711131530110967296295700083089200618578036514841859029903826852 8560992309254209151655963040560832961143659284061411253746747492673806 /585203010273271995432747653627255905257349331408248961279020618666512 3159880726497033457199070192362532979819236734657783585607137661881733 2317270250691221449554408390029770621104066842950370645794236576385243 092073571966336790629401910498717243477290786941061893349477395);\n \+ dD2 := evalf(459082658570921513953164323647507197954305168375667 3183845700200302534332587742217623080482918291837868379883619316461305 6433631196161420043564308284974332361928107788699172864000000000000/98 5887562924200351845276215042587497762069953057402377016500190871746398 1644444364477649885337171352504644147691542868180528905289771507441543 0613405282175922253744929618136360602342731009);\n dE2 := eval f(23588967591375624465856152688364858585315842926575026307163338506182 4450944410069228872467745517232097540334964401831968435723024542162190 593413479258339203444701116173436828000000000000/297110269634233018788 1466724919712808376816407561621914421392681447970337213274296347800773 8599076442260716193353252568426099785029229687371152170274790114236241 5106787638754452079112003);\n dF2 := evalf(2768395441459088329 3562071324453616619254400058428329258280564761134152049059734300734683 6532555977854282405064585719322724954775750853796035050461672610135073 0288576416425498784/15316694775002626995078932791530404679069260422338 2823654078380325146125850623649568394967070152462203258490972311730799 42503441492341951893581768205237902903076267644562936943365);\n \+ dH2 := evalf(-544155917956298114926777464167398496495106349076622449 6885881909404773462455476954586617358884776369157329471740505988662140 66220649758087642397226905839164560/2122322041425710910475963418712808 7165277039448199404163881598493515185565818702726759875346847141472497 545590565841329335745959704670895404730923001592982526183);\n \+ dM2 := evalf(202678994892101273895758473445422553519605482583459731886 8232734389397893992621740542568706775981507550947745121664194685635473 10799839913296112823989900087016816640/6519919678297123621182882102521 5216743259704980692583343455572751285099381337525031966803263814201164 99332195391416565622488301896859069212439579069696271769853943);\n \+ dN2 := evalf(-305196791227415437619476822714719924601580500494877 5204938118315567793553300073807392598077244069455645349931164003625753 6788743850628172010188641318227006300160/53889681929618364811458632261 9866790090106644295972331433984162374523520636775837262554828556306727 0446085243999476951962995055598991669366091550981595710296617);\n \+ dO2 := evalf(97318275348903815845261489493755493862287045364377413 6320279586279069396519628961442972113558640628996111229555741958210761 9599912237707573300713908550476991796875/28890191951996887328059007991 9075252998429517554423487903571953912979127902856221694928158953445226 1133960563400410952617791324621365608031520487775614964492843168);\n \+ dP2 := evalf(-8489604777260398325655973413381756293063848807723 0967513220091129707991847911192365253640659277323232297022844793605832 289498722607064143935532527609861614450000000/524778779291053629050941 2483913882799285499484637400053157695302304333073833876765534077794105 4042473079869205777573214626468655247600464358947878195072783647089613 );\n dQ2 := evalf(-1131725170758340624548598695867053306867079 0930684116089108063267007441091121012807969826956304751885515193210163 47490895541646758758744082026346365137641248828125/1896916803922566441 3633438556219311011171753879218226066476242515583227926414509471641929 9651819967919702200588781588709097425957084506761686422594552169002440 9184);\n dR2 := evalf(-264344830980458227171111427962550661742 6930601709439847467100941503089457912656043735093722279367018914073882 16421358153741119853774946839999649436127699550000000/6435062018654428 2686624131465784093169583322818871990165352226448251926287803232331940 3707040766268176797237959937541910875291933291358165480344028978781876 59603);\n dS2 := evalf(110838337182074274787608592037728664314 0659511680619608110047204870609906535271235071011167320677012262417100 384476549100910632240429562847131385533654392832/195677857406021658719 8933633332849637218978374349935843986870596857383880307828022013634090 6183977016870316790121557559778486040664457768213840054399403450605); \n d13 := evalf(1015004176276158830731638211397051094965865098 0948572439937122564569702621814400771414762385006116020371317006830828 64039351484894333903656283016515316421780248560729232658261881999933/3 7737918554579057822575628748158243359804558192135632887009296687756004 5733494466674262923083471787724388619394686264315976035405144813154695 6545918784820359994546918796590182150404);\n d83 := evalf(-177 7163414813357546034273085656009455221765815008728637730893678810306757 0836426304744601210046304732640521452983521885910436861484149979232379 6270693148400240928451182814545078125/42041347767035290947801557586066 0526487129749525901340263986851853038918025972738970701192044342546698 9198490634803379283494398459162737918753477852906834813198659563911736 37626688);\n d93 := evalf(-19257118308058104453013403088153964 4410727204703280617721916142106439302917343602627721683463613198614747 8363393495301219891918634663951048767516150657578858170048404960850436 4397421875/42337603173620155058811137710166820190164639947274759262411 6395810985913269634529565785587871541203003710786108005009594752776816 416647658417478899224726542253852914522570743229687504);\n dA3 := evalf(-94524416881175970443874062482400184172760294436275710074365 5356752726586317378974559653776234032135046608358545706930424158694973 6245248905149688072154140445633072248247643302750000000000000000000000 00000/3550354395374320878832405097417917337205368713854583722006856653 8873833435985122775280218421092384811225077471758406662091163390611014 056619378954841926923276101565451806710503659240871644044477355124217) ;\n dB3 := evalf(-11164715677251868384684662463037444182547631 3373226260269126249727409051694773293552376215538510100766916817848907 8865832348298324693314369620299715366584866988923056071472444116785152 /238181216545411917646674042573004894275032759693815347501298912959617 0032658795972190133502541328518817955532839185756628646562047458900852 4492682025423556442121165474180580453122101);\n dC3 := evalf(- 5667248910275255491273353902310164144591783241280290808113911612844069 2435835494111518471175205146893438275284488518176440494267051648191975 4263520577729948609811352787102129575356213152045946356826621350407389 373901628499253142359720211934631135337906787074395848973803353617/151 8406743989049737482835911944853322174402398560603304865298831900043955 8837191684302810279187459116652238304312914192062476788653186695803825 2543877126822587777171635997244838224685435175228368954112503527577409 56689472865519275308815710733834107574382851640859261077734756);\n \+ dD3 := evalf(-474280862413172002614089258246637524226188474524696 0170291333303723212843423197178598053238675985901810212463249957182386 5737497879473950302348895707808673588973139119219319275520000000000000 /299052560753674106726400451896251540987827885760745387695005057897763 0741098814790558220465218941976926408724799768003348093767937897357257 268061939960226002975030262865083469604937729507273);\n dE3 := evalf(-18746072585943602025763804076550196129998459802433382032197845 7160877979338341373266188141523278175452899257620899011626018899439666 42728970404736906883099384145061094602800767500000000000/6932572958132 1037717234223581459965528792382843104511336499162567119307868309733581 4486847233978450319416711178242559929942328317348692705326883973078435 998845635249171157093721517928007);\n dF3 := evalf(-8171556615 3669453647515161908419857277267272696418179237218029339512702341391159 6867678138410080180554877985549817145405012031242677172856749317792738 58761918568460538720039051532/1327446880500227672906840841932635072186 0025699359844716686792961512664240387382962594230479413213390949069217 600350002616836315960029691641104199111206182515999431958621212017583) ;\n dH3 := evalf(460240330132521931116561578353506954356511461 0227677468894546781403856779912746088505561545953421874624661567428461 710591909130920877409487387364776579773259448038/469033171155082111215 1879155355307263526225718052068320217833267066856010045933302613932451 6532182654219575755150509337831998570947322678844455339833520491382864 43);\n dM3 := evalf(-90015552340618286736345080522884739205107 1325458057686840475871607447987532551776300843530885259632654301098652 82388864661029291104102212461032576476626176369714790400/2542768674535 8782122613240199833934529871284942470107503947673373001188758721634762 4670532728875384543473955620265246059277043773977503699285143583718154 599024303777);\n dN3 := evalf(35091695021081334455043300724934 6941041126962741927467856134235522484082888625584204104878587226219482 1159761581094452529384301119683644348842507445550363720555699200/17314 7548039863806139216585457763199655951264812295910089739111370934407180 5960765124588664151413513994327188897031944665710311363956023367325215 3303867017183030421);\n dO3 := evalf(-180024016958806190025760 3141932842975392964702958402128007129054665367304663323114615643654317 1031254563345298484177141537603075105932782519580857606520340845892578 125/196453305273578833830801254344971172038932071937007971774428928660 8258069739422307525511480883427537571093183112279447780098100742528613 46143393168741817585513335424);\n dP3 := evalf(182896554965870 9731479420480012650182281115051917938701622665434505633817764346782640 2726590746956313890107592474919911578179828351123710023840906789445085 8579156250000/33061063095336378630209298648657461635498646753215620334 8934804045172983651534236228646901028640467580403175996398711252146752 5280598829254613716326289585369766645619);\n dQ3 := evalf(4124 3435521454583074407107323326623421384464037602939836517496553369043496 0107936272794888290328284017453765223475770905444074002631310707139343 1505300554032388671875/20486701482363717566724113640716855892065494189 5556841517943419168298861605276702293732843623965565353278376635884115 805825220033651267302621336402116342522636191872);\n dR3 := ev alf(259946344143252906945363035624578892963124825080939362543111556023 0949177487382124050938275481017763073117138877014924278603461990239448 4186119159765471733218750000/19305186055963284805987239439735227950874 9968456615970496056679344755778863409696995821112112229880453039171387 981262573262587579987407449644103208693634562978809);\n dS3 := evalf(-36732775273540739744960835935622670842597764295608074661344501 0826925654716948295117297855846543083003188863794718384208322398396834 836891172022683022668426240/117406714443612995231936017999970978233138 7024609961506392122358114430328184696813208180454371038621012219007407 2934535867091624398674660928304032639642070363);\n d14 := eval f(-8833360481118891690292223099780723042914053471614433014036853688901 3291777862136753181140266876078162724928062988975123169071040772446731 0032731574993075944074888866433538777450941379527/69006479642658848589 8525782823465021436426206941908715648169996576109797912675596204366487 9240626975531677611788548833206418933122648011971577683965777957229704 31436579947919021788160);\n d84 := evalf(593089610023011382708 6907697808530701568967702798266189921989092273439903152599574634654635 1679252756654820934267816139675130895068716422303976940126213491163511 60251208931107703125/1552295917552072281149595972408592713183248305941 7895640516437606881436973266685746610505552406494031960117503882350938 89290239431075472462308976437996369777181043531290487277390848);\n \+ d94 := evalf(6426644107285237229339620582992539256784826674834915 3812705734995575443744965262774820182413748207756799697456816407524339 9326527010229462131229550027865661971686863791261383698638796875/15632 3457871828264832533431545231336086761747497629880353519899991748644899 5573647627516016756459826475239825629556958503702560552923006738772229 781752836463706533838237184282694230784);\n dA4 := evalf(85435 6393194010401648783966623562063617203763043618629109423622346594664357 8873067335409766336456102039894446267384245628264970509854224605099825 658371134575360266129901323333165312500000000000000000000000/355035439 5374320878832405097417917337205368713854583722006856653887383343598512 2775280218421092384811225077471758406662091163390611014056619378954841 926923276101565451806710503659240871644044477355124217);\n dB4 := evalf(388123006153421781716445931935560686856244766387480032530594 6262312783375140470464990707120255095685505323109684509087047366215145 700896681262056085037955679010208348601102590632370816/916081602097738 1447949001637423265164424336911300590288511496652292961664072292200731 2827020820327646844443570737913716486406232594573109709587238559321370 93123525182377146328123885);\n dC4 := evalf(122935863508841554 1721010326584236212867442825459224596907348995212327538718601289223014 6722341577511458470435585326014409623959032888897925977632105911325017 3094312341343777911018052791585099313745507609991044695108955437315571 4527449222868396990393048813554735411845643661600089/36441761855737193 6995880618866764797321856575654544793167671719656010549412092600423267 4467004990187996537193035099406094994429276764806992918061053051043742 1066521192639338761173924504442054808548987000846618578296054734877246 26074115770576120185817851884393806222658656341440);\n dD4 := \+ evalf(9892557199064176899138067139064238308063420646483760661207070793 8164764286425234620188970976209654969767338911215756902675554350602449 524558366445464628151840317404165005714180096000000000000/690121294046 9402462916933505298112484334489671401816639115501336102224787151111055 1343549197360199467532509033840800077263702337028400552090801429383697 5231455776214507326954524216399117063);\n dE4 := evalf(5083076 1477892884800105160735828029215004852106299129283278146704494923118904 8890495272004664842006086857180411830936431474141732793040857669802664 407634062243459363510767441744343750000000/207977188743963113151702670 7443798965863771485293135340094974877013579236049292007443460541701935 3509582501335347276797898269849520460781159806519192353079965369057475 13471281164553784021);\n dF4 := evalf(340884895973250242571820 4713941682092392678022992811249241853996721011393211859234456219748229 6095497352855918065422410977984124762090647391281410312465093458996598 86395921975544647/6126677910001050798031573116612161871627704168935312 9461631352130058450340249459827357986828060984881303396388924692319770 013765969367807574327072820951611612305070578251747773460);\n \+ dH4 := evalf(-40116046043720503927836748415417374074978760652652146644 3309196141628288699820567184013440994631989924139294898755625706949327 367808305178910044551566142862246495687/375226536924065688972150332428 4245810820980574441654656174266613653484808036746642091145961322574612 3375660604120407470265598856757858143075564271866816393106291544);\n \+ dM4 := evalf(15107876256554417330793552766047794531442142052525 0562341310127832477577231219519534793984660029737052380737953981591950 047807772777391686956437757045513910858313072640/847589558178626070753 7746733277978176623761647490035834649224457667062919573878254155684424 2958461514491318540088415353092347924659167899761714527906051533008101 259);\n dN4 := evalf(-3918822079628415223750836469082414909755 0515186077755495655500684136801716189033392915841310993652828506589430 28946661509666208951180091043764846433823372240130626880/2473536400569 4829448459512208251885665135894973185130012819873052990629597228010930 3512666307344787713475312699575992095101473051993717623903602190055243 1026147203);\n dO4 := evalf(9174584513648988421921890350345040 3234441982373230666550980420280082113163479467841877693176670184327789 1494916002725759056048991943678105523839420312619645138940234375/15716 2644218863067064641003475976937631145657549606377419543142928660645579 1537846020409184706742030056874546489823558224078480594022890769147145 349934540684106683392);\n dP4 := evalf(-2378626836103778338629 5054061370774341234208090170893492270154158898466522009232309444552224 1080847764492718125435585368243358876121297849918181511874329548310832 421875/472300901361948266145847123552249451935694953617366004784192577 2073899766450489088980670014694863822577188228519981589316382178972284 04179230530903755655052823806517);\n dQ4 := evalf(-29305700463 8700826419721307165400107711262069850832402931121922339706927853375187 2155649696648210211636617052381568222960830167390577313213389812407076 86611441109765625/1638936118589097405337929091257348471365239535164454 7321435473533463908928422136183498627489917245228262270130870729264466 01760269210138420970691216930740181089534976);\n dR4 := evalf( -316559904963976275872457433593399598492304911551508975862511072113576 0222862467151019098572479934123487181191998826198796428115593036595036 8124146290157341331640625/27578837222804692579981770628193182786964281 2080879957851509541921079684090585281422601588731756972075770244839973 23224751798225712486778520586172670519223282687);\n dS4 := eva lf(9375592499307819204366030739014634986707821221131923155443146599595 4184423334743046992236574052940692034070852465986501035608263529463846 37051668235803122519104/1956778574060216587198933633332849637218978374 3499358439868705968573838803078280220136340906183977016870316790121557 559778486040664457768213840054399403450605);\n d15 := evalf(96 9017470315285960634203359774688754048366075454316908232373636049048543 9665146460600014146606181575185548129436932132494229486593675879000580 9968664194943583885945055749769399858528036829/27947624255276833678890 2942043503333681752613811473029837508848613324468154633616462768427609 2453925090329432774362277448599667914672444848488962006140072678030247 3181487890720382420480);\n d85 := evalf(-436605385408888719269 1568536304085550072138503190708741043238759280725668347540473629621844 4343637891583588582285829005655321088746498662338090981344739220698419 38969546247703205953125/2724279335303886853417540931577080211636600776 9278406849106348000076921888083033485301437244473397026090006219313525 8977570437020153745417135225364868362895895273139741480517182093824); \n d95 := evalf(-473100081324669928588016539414053818278899734 8947908242683874264696458965938746825013376907725783950090900292624303 8686904205387380969868392125708744847185777544007899483856509098248454 6875/27434766856505860478109617236188099483226686685834044002042742448 5518871798723175158629060940758699546404589397987246217399799377037987 682654526326697622799380496688610625841612837502592);\n dA5 := evalf(-96759694688540534020518170767923802883852342563276637968362265 3979266742697114185479539358504826616169716736875372170044742261542244 6351986272877281711613732896358783246304005386631250000000000000000000 00000/9585956867510666372847493763028376810454495527407376049418512965 4959350277159831493256589736949438990307709173747697987646141154649737 9528723231780732026928454742267198781183598799503534389200888588353859 );\n dB5 := evalf(-5714367334173884121673510333599822516599500 7998361812110545840379458389343357574402928713715915926004108721792404 7014636013855847882981265586394280625703053721876384331083791311390764 7744/32154464233630608882300995747355660727129422558665071912675353249 5482954408937456245668022843079350040423996933290077144867285876406951 6150806512073432180119686357339014378361171483635);\n dC5 := e valf(-6961519053493163228147386111578950332516189873903107090657783353 4264044924213347196197347109950442105194296296202428148284940125483981 3406891558021822050865880574539635203865934743483379110861020129028971 9091566747225465765660596491289653172229804334032539946269326037963484 6175501/49196378505245211494443883547013247638450637713363547077635682 1535614241706325010571411053045673675379532521059738419822824247952363 2489440439382421618909051843980361006310732758479808099677399154113245 1142935080699673892084282452000562902777622508541000439316384005891860 609440);\n dD5 := evalf(-1456489432822575482119570306654309570 5094765344042544798048122193173625348541721360005004974907018633576042 8849102999313989987772559756288015920933176271722532381358960021994612 363264000000000000/242232574210476026448384366035963748200140587466203 7640329540968971880900290039980352158576827343001310391067087812082711 9559520296968593783871301713677830624097745129207176103799995609008911 3);\n dE5 := evalf(-575681179489934662682216000558863254852730 6534926936652197481183564222037290081215927504329747749876098341900647 8028251103404656360002390614873014230699567681146447819781787004754437 500000000/561538409608700405509597211009825720783218301029146541825643 2167936663937333088420097343462595225447587275360543764735432532859370 5244109131477601819353315906496455182863724591442952168567);\n \+ dF5 := evalf(-2509438352506213955776032370881031122382967074412105878 8880134804318107701882303182514767450419497017131551535046418638457345 69579803608459291052424711886218328790953510215098177098999/1075231973 2051844150545410819654344084706620816481474220516302298825258034713780 1997013266883247028466687460662562835021196374159276240502292944012800 77007837959539886483181734242230);\n dH5 := evalf(929077255150 8887290716415294744286134833503455531195038064185783661959215562274156 0563379811297755260200274794770260118555338274928769766547343524801214 84916341523571/1688519416158295600374676495927910614869441258498744595 2784199761440681636165359889410156825951585755519047271854183361619519 4855410361643840039223400673768978311948);\n dM5 := evalf(-112 1298951139393638856969540983471316022150181320738601557109556094972658 9972411560593611291889592406104121961240079505196973053722601565557021 008554114128277080194744320/228849180708229039103519161798505410768841 5644822309675355290603570106988284947128622034794559878460891265600582 387214533493393965797533293566292253463391391218733993);\n dN5 := evalf(423730769149183924292244020287123048487301132347451099883279 2873279506318409082431409928706232446647117546696039074188222452432950 7192225631926685727976709766479372160/74206092017084488345378536624755 6569954076849195553900384596191589718887916840327910537998922034363140 4259380987279762853044191559811528717108065701657293078441609);\n \+ dO5 := evalf(-1314148835810737274057034891033096254323133198558372 2928783861853225768534521715827735785752704192081512236758414293377318 34971656708418935205641216579813718488507421875/7858132210943153353232 0501737988468815572828774803188709771571464330322789576892301020459235 3371015028437273244911779112039240297011445384573572674967270342053341 696);\n dP5 := evalf(10068064705785016907211540101226877892760 3511571084984103641931658236891027616793451517475163256325594981785900 7472525818553504099261244618131739976153704227162739843750/47230090136 1948266145847123552249451935694953617366004784192577207389976645048908 8980670014694863822577188228519981589316382178972284041792305309037556 55052823806517);\n dQ5 := evalf(180091638670992873662387276206 8108772223421670080670498202473857952878999209002119982671255856603340 857829230991214758102644165062400611993885456821340532556416652734375/ 2458404177883646108006893636886022707047859302746682098215321030019586 3392633204275247941234875867842393405196306093896699026404038152076314 56036825396110271634302464);\n dR5 := evalf(112352658828065100 1188595677264972632868172966602767292364941636331119654378295669766515 6880388612107326458755871421408937094754970489691038868565470780378170 44531250/2482095350052422332198359356537386450826785308727919620663585 8772897171568152675328034142985858127486819322035597590902276618403141 2381006685275554034673009544183);\n dS5 := evalf(-118835182831 3185448639649237326804487051944322024382716614399227862820950822089596 2966139747118145520712397987800629248762899582045196204072378128040503 51519475072/5283302149962584785437120809998694020491241610744826778764 5506115149364768311356594368120446696737945549855333328205411401912309 7940359741773681468783893166335);\n d16 := evalf(-186370238675 0616080828147010739150885904369085097361895383555980095923265881809225 1639982811890322121427994279995247516410928471566615722656980518873696 7670455874767623619356529916486605365/33537149106332200414668353045220 4000418103136573767635805010618335989361785560339755322113131094471010 8395319329234732938319601497606933818186754407368087213636296781778546 8864458904576);\n d86 := evalf(5811943726398264246849967110287 8166334413188879346265511768617237564434066144621803554221746688142049 1125931727968879965684278248815850571330049133580906106710975416968437 78683006640625/1634567601182332112050524558946248126981960466156704410 9463808800046153132849820091180862346684038215654003731588115538654226 22120922472502811352189210177375371638838448883103092562944);\n \+ d96 := evalf(6297748817363637326279779495117394432005890154464307238 3159843261783416462116351345171571705262616898515877364043439086082593 62076173252764755506385047676211116215322627584546800540705859375/1646 0860113903516286865770341712859689936012011500426401225645469131132307 9233905095177436564455219727842753638792347730439879626222792609592715 7960185736796282980131663755049677025015552);\n dA6 := evalf(6 4401622071909703125972215088932227919931732650091979455472416696268659 1138831190869338516403385301939015838600450510571792841596813966436362 2249501645548248427611276999379431481695312500000000000000000000000/28 7578706025319991185424812890851304313634865822221281482555388964878050 8314794944797697692108483169709231275212430939629384234639492138586169 695342196080785364226801596343550796398510603167602665765061577);\n \+ dB6 := evalf(760677318422992926802145972671140019883796599973301 6351044051673422965823199757713815439149494719185054200209264537048461 115276328588141679037009209393009976470850313339671147480660424320/192 9267854017836532938059744841339643627765353519904314760521194972897726 4536247374740081370584761002425439815997404628692037152584417096904839 07244059308071811814403408627016702890181);\n dC6 := evalf(185 3387903186769088903791395626558798423533847402239579928349258801420704 0122030237491048141669053536388491372418667466453261100689378945284591 8122099354529306148995255253227721140077037753678006349198892849287324 851782259434384308065166268822352638000001136832224471390106316131685/ 5903565420629425379333266025641589716614076525603625649316281858427370 9004759001268569326365480841045543902527168610378738909754283589873285 2725890594269086221277643320757287931017576971961287898493589413715220 96839608670501138942400675483333147010249200527179660807070232731328); \n dD6 := evalf(9694148199444308306140003621193152172516200864 3400167491338695810048571199109851501119571800117717955829380784517243 8964391032111373487278720547017921820911878962671348716457796249600000 000000000/726697722631428079345153098107891244600421762398611292098862 2906915642700870119941056475730482029003931173201263436248135867856089 09057813516139051410334918722932353876215283113999868270267339);\n \+ dE6 := evalf(3831636909847839665052304859783867179551686399166882 7495992995663848927246521748267376986757797360852895536141435219214959 5148943418083042339600731559488334402986489933681196283927343750000000 /168461522882610121652879163302947716234965490308743962547692965038099 9181199926526029203038778567634276182608163129420629759857811157323273 94432805458059947719489365548591173774328856505701);\n dF6 := \+ evalf(6680959501208553019597828003165733117292918041885019301392629179 9121162377100979461505397745149776785632343310386288698951672051860880 75911909456103498948346831512046999057861757650815/1290278367846221298 0654492983585212901647944979777769064619562758590309641656536239641592 0259896434160024952795075402025435648991131488602751532815360924094055 51447863779818081090676);\n dH6 := evalf(-11856055672839080972 9963047984313900045451468657258871966776046028298874074183405111757609 7626170671174539513184226294992428636769649770108439771018302553631702 3131475/77931665361152104632677376735134336070897288853788212089773229 6681877613976862764126622622736227034870109874085577693613208591640355 51527926171949261849431836143976);\n dM6 := evalf(413105617857 4323916285955498398297885114335286499125562261419112984683149708757030 0901889199200628378715230974621593760316927839202802650553597081516901 76939599220736000/5281134939420670133158134503042432556204036103436099 2508199013928540930498883395275893110643689502943644590782670474181542 1552453645584606207605904645398013358169383);\n dN6 := evalf(- 2472505541180997154138654002561688960654930455287062451571652990338330 9914033751021176689581847345421851317558124053350396779003280320521663 0617827612945075604887384000/22261827605125346503613560987426697098622 3054758666170115378857476915666375052098373161399676610308942127781429 61839288559132574679434586151324197104971879235324827);\n dO6 \+ := evalf(4008189996795355270618888911873788474521966392175759312049311 6373673554905421653475666575023129940503103397881199815418498842556836 14718661262502046764244232209080078125/1571626442188630670646410034759 7693763114565754960637741954314292866064557915378460204091847067420300 56874546489823558224078480594022890769147145349934540684106683392);\n \+ dP6 := evalf(-677633317779570380499942819288003821311244880898 0324864732067773477447562578187937508977710049168634099731835541104954 820987591368925793014917679098771068959761982421875/141690270408584479 8437541370656748355807084860852098014352577731622169929935146726694201 0044084591467731564685559944767949146536916852125376915927112669651584 71419551);\n dQ6 := evalf(-23218889703553279862838208777402349 4321918302596227172668524024600244472017995638542176206227991637859139 27948431921489510381344922882120825996303583972365082255654296875/1475 0425067301876648041361821316136242287155816480092589291926180117518035 5799225651487647409255207054360431177836563380194158424228912457887362 20952376661629805814784);\n dR6 := evalf(-70410514755183384328 5823269391324810119965582270274459885867962675818017973168345093924060 8420111399806284836892762247087554947465238769854765348764136682571822 265625/744628605015726699659507806961215935248035592618375886199075763 1869151470445802598410242895757438246045796610679277270682985520942371 43020055826662104019028632549);\n dS6 := evalf(156789569313095 5229911636340053836475194484574038586278871557689227361105814156197175 7094050612159937440356900330970743086546305742615545661294550241101882 77556160/3169981289977550871262272485999216412294744966446896067258730 3669089618860986813956620872268018042767329913199996923246841147385876 4215845064208881270335899801);\n d17 := evalf(3396386248302336 0501402695298901653551444921443607575679859853107404698842484899934942 2669745557498449061010107642168399870080820923826999442020466806483111 52486550365151463943202198163625/6521112326231261191741068647681744452 5742276556010373628752064676442375902747843841312633108823924918774353 4314017864738006589180090237131314091134766016958207057707568050783475 5898112);\n d87 := evalf(-135586436939395042686084025929493224 6067570905721612046822698879284920537843170993248941613203157995886547 8641232448480843476972760934550808251614730416758058490505157119926499 033203125/317832589118786799565379775350659358024270090641581413239574 0600008974220276353906618501011855229653043834058919911354738321765235 12702986657762925679756711877818663031727270045776128);\n d97 \+ := evalf(-146919750617542651057890353830095897616136859318559301571731 7917135960337947976643404381725546253900672087444693645231667658160625 075450750100546645148332010382142882815019297605907529296875/320072279 9925683722446122010888611606376446780013971800238319952331053504318437 0435173390443088514947080535429765178725363309927321098562976361404781 3893265943912803379063481881643753024);\n dA7 := evalf(-600968 4113207379872469956539391234327963904500983336248385546969033062346777 5806058756868713268021747656956615460051315716109948607663482426156045 09486769769014576474911531077953906250000000000000000000000000/2236723 2690858221536644152113732879224393822897283877448643196919490515064670 6273484265376052882024310717988072077961971174329360849388556702087415 5041396166394398623463822761730532174913574802073372825671);\n \+ dB7 := evalf(-7098315614938198739393535119746588627107112159260735897 4409111674366437697894980897326557729217150258075333588763222500102092 51828370165291648331982553704750655561290138882487159233856000/1500541 6642360950811740464682099308339327063860710366892581831516455871205750 4146247978410660103696685531198568868702667604733408989910753704303896 7601684055853633424873376568546692363);\n dC7 := evalf(-432375 5939312935073661164982485725604574183200435662485314261299777999693763 0307373104771104412905097141399544233521623387297755524310542715174723 7908087721177329088197832920686668864649248802773192746899503534703526 70420718991122794606841820683207228009828518422329841270954277625/1147 9154984557216015370239494303091115638482133118160984781659169164332306 4809169133329245710657190921890921580605631291992324522218091420276918 9231711078778763595417568139170976978621889924726469293090526668485216 3257241486332572133464677314778585326233435840489601374767475536);\n \+ dD7 := evalf(-9046164762779993960551974336402071130095709730312 6686836286917383741739007996608943105538184553986353791109652667304907 3268907227101509056882933282328966291600906678875792972231680000000000 000000/565209339824444061712896854083915412466994704087808782743559559 4267722100676759954155036679263800336390912489871561526327897221402626 00521623663706652482714562280719681500775755333230876874597);\n \+ dE7 := evalf(-357551979653247288510572463419379677521003334021770358 5836045976065501124475159862518944784094756442798898032869561505824587 72473747406508493059474166354936016711365284260766030546875000000000/1 3102562890869676128557268256895933484941760357346752642598341725185549 1871105396468938014127221927110369758412687843826759100051978902921306 781070911824403781825062093348690713366888393323);\n dF7 := ev alf(-22265663771726819852101754973140696095484854189196917110684336241 6094055612711527938696866890758035528422697521113081199324670070902936 772669967263964990767809561478111920044897862125/358410657735061471684 8470273218114694902206938827158073505434099608419344904593399900442229 4415676155562486887520945007065458053092080167430981337600256692793198 4662882772724474741);\n dH7 := evalf(1938932239390209746000734 6431045968828446865210652568594094436044996272740572261131799706079356 8194627976611197400618047451619277195308800221718785243557284472131993 75/8442597080791478001873382479639553074347206292493722976392099880720 3408180826799447050784129757928777595236359270916808097597427705180821 920019611700336884489155974);\n dM7 := evalf(-1656227487986310 3837621119021996210935654789279393752804649303315364758321556009817327 2088481429703627886618431624475392737839227823419891589949680200593945 18172057600000/2288491807082290391035191617985054107688415644822309675 3552906035701069882849471286220347945598784608912656005823872145334933 93965797533293566292253463391391218733993);\n dN7 := evalf(622 9726540408146156220013147656327004412062568736333191016739697425098742 6355829178163818809114617806390514380164840603268897712399164110676347 2410383183531459741600000/51944264411959141841764975637328959896785379 4436887730269217334112803221541788229537376599245424054198298156669109 58339971309340918680701019756459911601051549091263);\n dO7 := \+ evalf(-847131331713615912060197132110524893262603902440806555812289021 1639074554446611565664034356986955846188169604260494164312596210399817 89596404716169297879475995849609375/3929066105471576676616025086899423 4407786414387401594354885785732165161394788446150510229617668550751421 8636622455889556019620148505722692286786337483635171026670848);\n \+ dP7 := evalf(19219953668920301649816466986369759631390398570556623 3907430060579117336257629642430750731566807950796152805089685758007715 11744475487050693431120192609459078333007812500/3306106309533637863020 9298648657461635498646753215620334893480404517298365153423622864690102 8640467580403175996398711252146752528059882925461371632628958536976664 5619);\n dQ7 := evalf(2224265657720913213792803485589748976258 3074002299371185968239416540344900486835039599152390021635622037450275 25927705046623314469058321213812394587322423923121826171875/1229202088 9418230540034468184430113535239296513733410491076605150097931696316602 1376239706174379339211967025981530469483495132020190760381572801841269 8055135817151232);\n dR7 := evalf(1871736451411923969701559071 0237039394986796314607212569975747897472699052302634634524758967083861 330828894032415208276570869749417022470440098629019283318233398437500/ 1737466745036695632538851549576170515578749716109543734464510114102802 0097706872729623900090100689240773525424918313631593632882198866670467 96928878242711066809281);\n dS7 := evalf(-59872065062863860638 3523707979242930130755669845497798132642764732928530595132258747219042 9974024521973436508778405751703942192139208809068857046641319152029120 00/1056660429992516957087424161999738804098248322148965355752910122302 9872953662271318873624089339347589109971066665641082280382461958807194 8354736293756778633267);\n d18 := evalf(-103126451771286765302 0804719920475075829598161231838437473400760612259546155815044831245671 9800933814372339875996674674843496132094731283857582123235641116313108 5977147230002341138440434375/39126673957387567150446411886090466715445 3659336062241772512388058654255416487063047875798652943549512646120588 4107188428039535080541422787884546808596101749242346245408304700853538 8672);\n d88 := evalf(7115780036212695343113919200641647119006 7241999628756221316493231780951007648429161389291035092798704861441899 8205752390543961239142616682422546592263008327465502750458523697583007 8125/27242793353038868534175409315770802116366007769278406849106348000 0769218880830334853014372444733970260900062193135258977570437020153745 417135225364868362895895273139741480517182093824);\n d98 := ev alf(453562904428853725330484396453340437524946306963694983178546105469 9188172461757581314132694836812552895698143534834794737500991610853618 8451062539469169337704453141127104178603364013671875/16138098150885800 2812409513154047644018980509916670847070839661462069924587484220681546 5064357404114978850525870513213043528231629635221662673684274691898819 8852746388860343624284558976);\n dA8 := evalf(1576986282773265 3937678077141844260208438921080912760988828025242262579049288745618990 2521760831595533774669817505432866591327954847923083147837604244057703 2114043803176335854423828125000000000000000000000000/95859568675106663 7284749376302837681045449552740737604941851296549593502771598314932565 8973694943899030770917374769798764614115464973795287232317807320269284 54742267198781183598799503534389200888588353859);\n dB8 := eva lf(1862651371467606970545561570150178277362133600028535580304441413134 4811589381192625330215714945659143986319318951266621599951478012587289 03755759949477316870759096854544633027526749600000/6430892846726121776 4601991494711321454258845117330143825350706499096590881787491249133604 5686158700080847993866580154289734571752813903230161302414686436023937 271467802875672234296727);\n dC8 := evalf(22691721155097070385 1556614424855447243003656596507484151792774836360755063974437258495822 0003748387892443487195551316715874394275451475295706453438104427754417 4760616235657694650962635909194910376929811893948555819558415160966806 790107628439109100540016017033958122053031002540625/983927570104904229 8888776709402649527690127542672709415527136430712284834126500211428221 0609134735075906504211947683964564849590472649788808787648432378181036 8796072201262146551695961619935479830822649022858701613993477841685649 0400112580555524501708200087863276801178372121888);\n dD8 := e valf(13963421345674867269475983828473404090176043468794105027612159784 3244255711379873611559261254754698808214864630082218777303168890331951 59065987802000787781808568283866750656064000000000000000000/1424897495 3557413320493198002115514600008269850953162590173770405716946472294352 8256009328048667235371199474534577181335997408942923344669316890010080 45782720057497134827750649294115064122889);\n dE8 := evalf(938 2432698125066762721962011783188035974050560445249382837937259487701568 2171399956961215188017790554000785418684950410890929656197179627348227 070540612410070990323983501493381835937500000000/561538409608700405509 5972110098257207832183010291465418256432167936663937333088420097343462 5952254475872753605437647354325328593705244109131477601819353315906496 455182863724591442952168567);\n dF8 := evalf(81797485453126782 4407707024136524870166537465979144893511526543079909569175697426990881 8147948261482715336965121094826263715996477302558580979804793012797785 56977362820428267180271875/2150463946410368830109082163930868816941324 1632962948441032604597650516069427560399402653376649405693337492132512 56700423927483185524810045858880256015401567591907977296636346848446); \n dH8 := evalf(-297625734716720540712885358881900309825380023 0953633229059660773191980599702866477889724654665642044155155827666071 2850640552138405068958899262535046785717791288796875/16885194161582956 0037467649592791061486944125849874459527841997614406816361653598894101 5682595158575551904727185418336161951948554103616438400392234006737689 78311948);\n dM8 := evalf(824000207343077357503305774896925209 1340449802985542393800318072183813200694981779032464911305022315520569 712238482403724434766143485229893205877004653252974167040000000/228849 1807082290391035191617985054107688415644822309675355290603570106988284 9471286220347945598784608912656005823872145334933939657975332935662922 53463391391218733993);\n dN8 := evalf(-50181008748594324958316 9000896219311863232236211324894560094799151424976078638126581069542682 3881594496931902241712325149989871113268437412005428973312673401527000 0000/74206092017084488345378536624755656995407684919555390038459619158 9718887916840327910537998922034363140425938098727976285304419155981152 8717108065701657293078441609);\n dO8 := evalf(7527177875668363 0258500910364181306576188133167494881408039571268978584249656005204487 9748984161719953358454952814813992481430865789047055988453945857465388 885498046875/785813221094315335323205017379884688155728287748031887097 7157146433032278957689230102045923533710150284372732449117791120392402 97011445384573572674967270342053341696);\n dP8 := evalf(-56813 8215039667014376070925228062638828901111643031424732713990985160932607 7030007360804214383536806980026931163020651118924773451409848646164636 98724494085119628906250/1574336337873160887152823745174164839785649845 3912200159473085906912999221501630296602233382316212741923960761733271 9643879405965742801393076843634585218350941268839);\n dQ8 := e valf(-2580041516161825004089517083548801251030605627088253348494462691 0560563598440593958418204881036047541438975982470751912357719995839607 71890579078591515105000140380859375/2458404177883646108006893636886022 7070478593027466820982153210300195863392633204275247941234875867842393 40519630609389669902640403815207631456036825396110271634302464);\n \+ dR8 := evalf(-109882252504213447998914427007962923963087452883649 2853910567964806214663214762948798802583441193382994526522684544266476 3360414199045249633003194810302693200683593750/17374667450366956325388 5154957617051557874971610954373446451011410280200977068727296239000901 0068924077352542491831363159363288219886667046796928878242711066809281 );\n dS8 := evalf(34687987505181639863565677117014381088736312 6091440398384221735139986294391024365812789221946686217330260138723496 511914063027197196744142879477163537290994800000/105666042999251695708 7424161999738804098248322148965355752910122302987295366227131887362408 93393475891099710666656410822803824619588071948354736293756778633267); \n d19 := evalf(7647388829390407072050436441201063192701605491 2642690481245911735771745655593497324159977975063342019707168762488624 3777043841248564824465216259859042232889853458000575076625856711171875 /137554713131440665763288166787036797046487614610334381873148886426870 6366698587331027688354639254666255396517693631433431732649051752843948 865660987397067021218012351901357121393822258);\n d89 := evalf (-61282488758208138189351075812740163826665468755334950443688109021147 0481231109604735853634364261060681869440861373221221047599744108511137 23496300850059096271587381946566656494140625/9577544538177727219046042 3375756726190349246063869399078889504687770428512791914596762865312601 7864198476781147741144843021067648978011232116026673365338305881819631 9036424432182986);\n d99 := evalf(-132809861647190694743481879 4022082629548066913588821718332722836264088737905199993438457740160120 4994188552866954551386317737767872860524802686549332570977325713152260 347650492077636718750/192900704459806831486708246191947574491437640759 7706218893630328413804567334772325334110584739709606185657269204597824 9660923393697983508936646382345926603081441173417934629488402636901); \n dA9 := evalf(-347681642426350753964860127786643019568337761 1991420521124785172880884313094085483225855774470326249391834138535004 0564349638345755520196676218906099978409492761821073416350625000000000 00000000000000000000000/8627361180759599735562744386725539129409045974 6666384444766616689463415249443848343930930763254495091276938256372928 1888815270391847641575850908602658824235609268040478903065238919553180 9502807997295184731);\n dB9 := evalf(-410662854315178490678197 9989897271298955426048384598932752426688566733567503765766574493662442 5067382920536000260450207589665560914234588100437954630241360934271214 43482081999098880000000/5787803562053509598814179234524018930883296060 5597129442815635849186931793608742124220244111754283007276319447992213 88607611145775325129071451721732177924215435443210225881050108670543); \n dC9 := evalf(-422541705219528309901564908243090919459209973 1222062410181998574743510650818902328634905960786357651399247822074444 1528760917061908068260621709229328120675804125449122539151017919977332 0460333368754049499948117521617541908661115182087322392681055318368593 62109614054221483125000/7479179164648765260979644458160797782872563165 8829716841000192463184597556704815796329383064376065513780281917865638 1487401728305957641975742473678962334146395199717044878320858552673528 6671721686996487504838103484747720080380778175761252111462881366030472 1933691900849112413);\n dD9 := evalf(-523352868992000395483689 7492689462655273196898334954779808075274231386523757049967615070388405 9405531284172056705948945941416399828303247946160037786877544362949679 4511404646400000000000000000000/21800931678942842380354592943236737338 0126528719583387629658687207469281026103598231694271914460870117935196 0379030874440760356826727173440548417154231004756168797061628645849341 999604810802017);\n dE9 := evalf(-5590717896489175602911525616 8408759961338947104435890156152551726900481863163977637962249568073026 3116049986637383334129717327533601088626237970758848986055969939716807 4893750000000000000000/13659042395887307161044256484022787802835039754 7630239903534836517378311989183231840205651792856835211582373634848331 4024129614441478910762657563287497783359887751612556144652224288025721 9);\n dF9 := evalf(-901703597531469509650870766385259684414230 3496473697579396238398913755792260647003249489317307451860111386528647 2611538603740693823956017562923150221198967604406547830602712699000000 0/96770877588466597354908697376889096762359587348333267984646720689427 3223124240217973119401949223256200187145963065515190767367433486164520 6364961152069307054163585897834863560818007);\n dH9 := evalf(6 7688562108349667935518528099599405146768013584653696066020774529129761 8192550205304693092772921502047700394397986904609639332177628438794145 5501882702103924925000000/12663895621187217002810073719459329611520809 4387405844645881498210805112271240199170576176194636893166392854538906 375212146396141557771232880029417550505326733733961);\n dM9 := evalf(-51183242042211778957178456695117120536652219126107659229918664 6443064360134183695009255798167391407803449959598713365448146161393269 8669586970292822890575560704000000000/68654754212468711731055748539551 6232306524693446692902606587181071032096485484138586610438367963538267 3796801747161643600480181897392599880698876760390174173656201979);\n \+ dN9 := evalf(24198828827025801944972428480338139445112507555297 6152458037287624949216304742841501498796552483304918237732362481009715 294164645735969865842208629511133792064000000000/155832793235877425525 2949269119868796903561383310663190807652002338409664625364688612129797 7362721625948944700073287501991392802275604210305926937973480315464727 3789);\n dO9 := evalf(-538156104355320189819554330776287924859 6447488459819487792789195763545539669790442254322552046666673876271137 80209713917110272256440018897453771437411597747802734375/3069582894899 6692786062695991401745631083136240157495589754520103254032339678473555 0861168888035552745483309861293663715640328241020095853349051826159089 9773645866);\n dP9 := evalf(8886714947108851830608455466477850 3454087184123826396530415633646828263339960752204403283740591412366088 23939229680028180048249622001587184971466827380275859375000000000/9918 3189286009135890627895945972384906495940259646861004680441213551895095 4602708685940703085921402741209527989196133756440257584179648776384114 8978868756109299936857);\n dQ9 := evalf(6937135133858105856360 7097156820860883141290889129284642002146770793509936079299457747712756 0700179732805287515367888955410103054368041370566726586811242691040039 0625/28809423959573977828205784807258078598217101204062680838460793320 5420274132420362600561811346201576278047717144212037851941715672322094 64431125431547610667245714482);\n dR9 := evalf(780842318958279 9195312500930899926426237089320013076787436319855432496823610121907754 2526388665754408217788780365715516029368756063416596210373691728744531 25000000000/5212400235110086897616554648728511546736249148328631203393 5303423084060293120618188871700270302067722320576274754940894780898646 59660001140390786634728133200427843);\n dS9 := evalf(-24134697 4388131504896351852091785502933924535668396650654922406116679516677509 3117564200886049982535476490209175908598920354949838228578237448007813 20148480000000/3169981289977550871262272485999216412294744966446896067 2587303669089618860986813956620872268018042767329913199996923246841147 3858764215845064208881270335899801);\n eqns := \{SOLN_=[soln], \n d12_=d12,d82_=d82,d92_=d92,dA2_=dA2,dB2_=dB2,dC2_=dC2,dD2_= dD2,dE2_=dE2,dF2_=dF2,\n dH2_=dH2,dM2_=dM2,dN2_=dN2,dO2_=dO2,d P2_=dP2,dQ2_=dQ2,dR2_=dR2,dS2_=dS2,\n d13_=d13,d83_=d83,d93_=d 93,dA3_=dA3,dB3_=dB3,dC3_=dC3,dD3_=dD3,dE3_=dE3,dF3_=dF3,\n dH 3_=dH3,dM3_=dM3,dN3_=dN3,dO3_=dO3,dP3_=dP3,dQ3_=dQ3,dR3_=dR3,dS3_=dS3, \n d14_=d14,d84_=d84,d94_=d94,dA4_=dA4,dB4_=dB4,dC4_=dC4,dD4_= dD4,dE4_=dE4,dF4_=dF4,\n dH4_=dH4,dM4_=dM4,dN4_=dN4,dO4_=dO4,d P4_=dP4,dQ4_=dQ4,dR4_=dR4,dS4_=dS4,\n d15_=d15,d85_=d85,d95_=d 95,dA5_=dA5,dB5_=dB5,dC5_=dC5,dD5_=dD5,dE5_=dE5,dF5_=dF5,\n dH 5_=dH5,dM5_=dM5,dN5_=dN5,dO5_=dO5,dP5_=dP5,dQ5_=dQ5,dR5_=dR5,dS5_=dS5, \n d16_=d16,d86_=d86,d96_=d96,dA6_=dA6,dB6_=dB6,dC6_=dC6,dD6_= dD6,dE6_=dE6,dF6_=dF6,\n dH6_=dH6,dM6_=dM6,dN6_=dN6,dO6_=dO6,d P6_=dP6,dQ6_=dQ6,dR6_=dR6,dS6_=dS6,\n d17_=d17,d87_=d87,d97_=d 97,dA7_=dA7,dB7_=dB7,dC7_=dC7,dD7_=dD7,dE7_=dE7,dF7_=dF7,\n dH 7_=dH7,dM7_=dM7,dN7_=dN7,dO7_=dO7,dP7_=dP7,dQ7_=dQ7,dR7_=dR7,dS7_=dS7, \n d18_=d18,d88_=d88,d98_=d98,dA8_=dA8,dB8_=dB8,dC8_=dC8,dD8_= dD8,dE8_=dE8,dF8_=dF8,\n dH8_=dH8,dM8_=dM8,dN8_=dN8,dO8_=dO8,d P8_=dP8,dQ8_=dQ8,dR8_=dR8,dS8_=dS8,\n d19_=d19,d89_=d89,d99_=d 99,dA9_=dA9,dB9_=dB9,dC9_=dC9,dD9_=dD9,dE9_=dE9,dF9_=dF9,\n dH 9_=dH9,dM9_=dM9,dN9_=dN9,dO9_=dO9,dP9_=dP9,dQ9_=dQ9,dR9_=dR9,dS9_=dS9 \};\n return subs(eqns,eval(rk89interp2));\n end if; \n \+ else\n return evalf[saveDigits]([soln]);\n end if;\nend proc: # of rungk89" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "rungk89b: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31177 "rungk89b := pro c(fxy,eqn1,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,SQRT6, c2,c3,c4,c5,c6,c7,\n c8,c9,cA,cB,cC,cD,cE,cG,a21,a31,a32,a41,a42,a43 ,a51,a53,a54,a61,a64,\n a65,a71,a74,a75,a76,a81,a86,a87,a91,a96,a97, a98,aA1,aA6,aA7,aA8,aA9,\n aB1,aB7,aB8,aB9,aBA,aC1,aC6,aC7,aC8,aC9,a CA,aCB,aD1,aD6,aD7,aD8,aD9,\n aDA,aDB,aDC,aE1,aE6,aE7,aE8,aE9,aEA,aE B,aEC,aED,aF1,aF6,aF7,aF8,aF9,\n aFA,aFB,aFC,aFD,aFE,aG1,aG6,aG7,aG8 ,aG9,aGA,aGB,aGC,aGD,aGE,aH1,aH6,\n aH7,aH8,aH9,aHA,aHB,aHC,aHD,aHE, aHG,b1,b8,b9,bA,bB,bC,bD,bE,bG,bH,f1,\n f2,f3,f4,f5,f6,f7,f8,f9,fA,f B,fC,fD,fE,fF,fG,fH,e1,e8,e9,eA,eB,eC,eD,\n eE,eF,eG,eH,yout,yerr,rs ,hmx,hmn,hstrt,temp,sgn,maxstps,tiny,yscale,\n err,htemp,hnext,saveD igits,eps,Options,j,prntflg,t,tt,errcntl,\n ymax,ymaxtemp,x,y,errc,x 0,y0,xn,f,outpt,minstepsize,ftd,inc,rk89step,\n finished,maxstepsize ,laststep,safety,pgrow,pshrink,errcontrol,eqns;\n\nrk89step := proc(x_ rk89step::realcons)\n local c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE,c G,a21,a31,a32,a41,a42,\n a43,a51,a53,a54,a61,a64,a65,a71,a74,a75,a76 ,a81,a86,a87,a91,a96,a97,\n a98,aA1,aA6,aA7,aA8,aA9,aB1,aB7,aB8,aB9, aBA,aC1,aC6,aC7,aC8,aC9,aCA,\n aCB,aD1,aD6,aD7,aD8,aD9,aDA,aDB,aDC,a E1,aE6,aE7,aE8,aE9,aEA,aEB,aEC,\n aED,aG1,aG6,aG7,aG8,aG9,aGA,aGB,aG C,aGD,aGE,aH1,aH6,aH7,aH8,aH9,aHA,\n aHB,aHC,aHD,aHE,aHG,b1,b8,b9,bA ,bB,bC,bD,bE,bG,bH,f1,f2,f3,f4,f5,f6,\n f7,f8,f9,fA,fB,fC,fD,fE,fG,f H,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,\n saveDigits;\n options `Cop yright 2005 by Peter Stone`;\n \n data := SOLN_;\n\n saveDigits \+ := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n\n # \+ procedure to evaluate the slope field\n fn := proc(X_,Y_)\n loc al val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n error \"evaluation of slope f ield failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n v al;\n end proc;\n\n xx := evalf(x_rk89step);\n n := nops(data );\n if (data[1,1]data[n,1] or xxdata[1,1])) then \n error \"independent variable is outside the interpolation inte rval: %1\",evalf(data[1,1])..evalf(data[n,1]);\n end if;\n\n c2 := 0.1; c3 := c3_; c4 := 0.2; c5 := c5_; c6 := c6_; c7 := c7_; c8 := 0.8 ; \n c9 := 0.6; cA := 0.4; cB := 0.875; cC := 0.11; cD := 0.32; cE : = cE_; cG := cG_;\n a21 := c2; a31 := a31_; a32 := a32_; a41 := .5e- 1; a43 := 0.15;a51 := a51_; \n a53 := a53_; a54 := a54_; a61 := a61_ ; a64 := a64_; a65 := a65_; a71 := a71_;\n a74 := a74_; a75 := a75_; a76 := a76_; a81 := a81_; a86 := a86_; a87 := a87_;\n a91 := a91_; \+ a96 := a96_; a97 := a97_; a98 := a98_; aA1 := aA1_; aA6 := aA6_;\n a A7 := aA7_; aA8 := -.75e-1; aA9 := aA9_; aB1 := aB1_; aB7 := aB7_; aB8 := aB8_;\n aB9 := aB9_; aBA := aBA_; aC1 := aC1_; aC6 := aC6_; aC7 \+ := aC7_; aC8 := aC8_;\n aC9 := aC9_; aCA := aCA_; aCB := aCB_; aD1 : = aD1_; aD6 := aD6_; aD7 := aD7_;\n aD8 := aD8_; aD9 := aD9_; aDA := aDA_; aDB := aDB_; aDC := aDC_; aE1 := aE1_;\n aE6 := aE6_; aE7 := \+ aE7_; aE8 := aE8_; aE9 := aE9_; aEA := aEA_; aEB := aEB_;\n aEC := a EC_; aED := aED_; aG1 := aG1_; aG6 := aG6_; aG7 := aG7_; aG8 := aG8_; \n aG9 := aG9_; aGA := aGA_; aGB := aGB_; aGC := aGC_; aGD := aGD_; \+ aGE := aGE_;\n aH1 := aH1_; aH6 := aH6_; aH7 := aH7_; aH8 := aH8_; \+ aH9 := aH9_; aHA := aHA_;\n aHB := aHB_; aHC := aHC_; aHD := aHD_; a HE := aHE_; aHG := aHG_; b1 := b1_;\n b8 := b8_; b9 := b9_; bA := bA _; bB := bB_; bC := bC_; bD := bD_; bE := bE_;\n bG := bG_; bH := bH _;\n # Perform a binary search for the interval containing x.\n n \+ := nops(data);\n jF := 0;\n jS := n+1;\n\n if data[1,1]1 do\n jM := trunc((jF+jS)/2);\n \+ if xx>=data[jM,1] then jF := jM else jS := jM end if;\n end do ;\n if jM = n then jF := n-1; jS := n end if;\n else\n whi le jS-jF>1 do\n jM := trunc((jF+jS)/2);\n if xx<=data[jM ,1] then jF := jM else jS := jM end if;\n end do;\n if jM = \+ n then jF := n-1; jS := n end if;\n end if;\n \n # Get the data n eeded from the list.\n xk := data[jF,1];\n yk := data[jF,2];\n\n \+ # Do one step with step-size ..\n h := xx-xk;\n f1 := fn(xk,yk); \n t := a21*f1;\n f2 := fn(xk + c2*h,yk + t*h);\n t := a31*f1 + \+ a32*f2;\n f3 := fn(xk + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n \+ f4 := fn(xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65*f5;\n \+ f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76* f6;\n f7 := fn(xk + c7*h,yk + t*h);\n t := a81*f1 + a86*f6 + a87*f 7;\n f8 := fn(xk + c8*h,yk + t*h);\n t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA6*f6 \+ + aA7*f7 + aA8*f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h); \n t : = aB1*f1 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB*h,y k + t*h); \n t := aC1*f1 + aC6*f6 + aC7*f7 + aC8*f8 + aC9*f9 + aCA*f A + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n t := aD1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn(x k + cD*h,yk + t*h);\n t := aE1*f1 + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f 9 + aEA*fA + aEB*fB + \n \+ aEC*fC + aED*fD;\n fE := fn(xk + cE*h,yk + t*h ); \n t := aG1*f1 + aG6*f6 + aG7*f7 + aG8*f8 + aG9*f9 + aGA*fA + \+ aGB*fB + \n \+ aGC*fC + aGD*fD + aGE*fE;\n fG := fn(xk + cG*h,yk + t*h);\n t := a H1*f1 + aH6*f6 + aH7*f7 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + \n \+ aHC*fC + aHD*fD + aHE*fE + aHG*fG;\n fH := fn(xk + h,yk + t*h);\n\n # Calculate the intermed iate y value.\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE*fE + bG*fG + bH*fH;\n ys := yk + t*h;\n \n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk89step \n\n # start of main procedure rungk89\n x := lhs(eqn1);\n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn := rhs(rs);\n y0 := rhs(eqn 2);\n\n # Get the options.\n # Set the default values to start wit h.\n maxstps := 2000;\n t := Float(1,-Digits);\n hmx := 0.5;\n \+ hstrt := evalf(0.1*10^(-ceil(Digits/10)));\n hmn := min(0.000005,hs trt/2000);\n errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rkstep'; \n prntflg := false;\n Options := [];\n if nargs>3 then\n O ptions:=[args[4..nargs]];\n if not type(Options,list(equation)) t hen\n error \"each optional argument must be an equation\"\n \+ end if;\n if hasoption(Options,'maxsteps','maxstps','Options' ) then\n if not type(maxstps,posint) then\n error \+ \"\\\"maxsteps\\\" must be a positive integer\"\n end if;\n \+ end if;\n if hasoption(Options,'tolerance','t','Options') then \n tt := evalf(t); \n if not type(tt,float) or \n \+ tt>Float(1,-iquo(Digits,2)) or tthmx) or ev alf(hstrttrue then prntflg := false e nd if; \n end if;\n if nops(Options)>0 then\n error \+ \"%1 is not a valid option for %2\",op(1,Options);procname;\n end if;\n end if;\n\n if prntflg then\n print(`method: 17 stage, order 8-9`);\n print(`an embedded order 8 scheme provides error \+ control`);\n print(``);\n end if;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digits)),Digits+5);\n \n # procedure to evaluate the slope field\n fn := subs(\{FXY_=evalf(fxy),X_=x,Y_= y\},\n proc(X_,Y_)\n local val; \n val := traperror(eva lf(FXY_));\n if val=lasterror or not type(val,numeric) then\n \+ error \"evaluation of slope field failed at %1\",evalf([X_,Y_],sa veDigits);\n end if;\n val;\n end proc);\n\n\n SQRT6 \+ := evalf[Digits+3](sqrt(6)); \n\n # nodes\n c2 := 0.1;\n c3 := e valf(2/15);\n c4 := 0.2;\n c5 := evalf(4/25+4/25*SQRT6);\n c6 := evalf(12/25+2/25*SQRT6);\n c7 := evalf(12/25-2/25*SQRT6);\n c8 := 0.8;\n c9 := 0.6;\n cA := 0.4;\n cB := 0.875;\n cC := 0.11;\n cD := 0.32;\n cE := evalf(29/35);\n cG := evalf(8/9);\n\n # l inking coefficients\n a21 := c2;\n a31 := evalf(2/45);\n a32 := \+ evalf(4/45);\n a41 := .5e-1;\n a43 := .15;\n a51 := evalf(8/625+ 188/625*SQRT6);\n a53 := evalf(-564/625-504/625*SQRT6);\n a54 := e valf(656/625+416/625*SQRT6);\n a61 := evalf(9/125-1/125*SQRT6);\n \+ a64 := evalf(624/2375+64/2375*SQRT6);\n a65 := evalf(69/475+29/475*S QRT6);\n a71 := evalf(2781/3125-1041/3125*SQRT6);\n a74 := evalf(- 32496/15625+14656/15625*SQRT6);\n a75 := evalf(-489/3125+179/3125*SQ RT6);\n a76 := evalf(28536/15625-11596/15625*SQRT6);\n a81 := eval f(4/45);\n a86 := evalf(16/45-1/45*SQRT6);\n a87 := evalf(16/45+1/ 45*SQRT6);\n a91 := evalf(57/640);\n a96 := evalf(177/640-69/1280* SQRT6);\n a97 := evalf(177/640+69/1280*SQRT6);\n a98 := evalf(-27/ 640);\n aA1 := evalf(11/120);\n aA6 := evalf(133/360-1/720*SQRT6); \n aA7 := evalf(133/360+1/720*SQRT6);\n aA8 := -.75e-1;\n aA9 := evalf(-16/45);\n aB1 := evalf(470183/4718592-151165/28311552*SQRT6) ;\n aB7 := evalf(4383785/4718592-151165/786432*SQRT6);\n aB8 := ev alf(11515/262144+151165/3145728*SQRT6);\n aB9 := evalf(-164395/29491 2+151165/442368*SQRT6);\n aBA := evalf(94325/262144-151165/786432*SQ RT6);\n aC1 := evalf(305298125802731/4045910400000000-14647079/52681 12500*SQRT6);\n aC6 := evalf(-11/122);\n aC7 := evalf(41/329);\n \+ aC8 := evalf(16537188487669/115597440000000-1525917/50172500*SQRT6); \n aC9 := evalf(-25653703567069/158946480000000+40277312/413923125*S QRT6);\n aCA := evalf(34077244798469/366058560000000-19681743/238319 375*SQRT6);\n aCB := evalf(-7707279308072/103222079296875+1694957568 /91752959375*SQRT6);\n aD1 := evalf(55635729574410641830578893042657 311787/\n 9268460869505457246833041514831067300000*SQRT6 \n -23241711993637845540031798249613836056683/38618586956272738528 4710063117961137500000);\n aD6 := evalf(3409993271548119342013768905 587777/23535182610796132293329680622100000\n -175787806438997 86451499413066603/862427135207572832349592925400000*SQRT6);\n aD7 := evalf(-67118030646177264636609352228469/\n 162902903 3169859794438119970200000*SQRT6\n -1109333194611029054840182 100205234341/7235332450823932276996909847643300000);\n\n aD8 := eval f(14678137743817181963216637657880948291/\n 147118 426500086622965603833568747100000*SQRT6\n -42321230 93760815813158939759644562095947/\n 11033881987506 496722420287517656032500000);\n aD9 := evalf(-4296335534638193278939 550773304647774/\n 2677339011674370528234334471195949062 5*SQRT6\n +420638218384672396365041268827632707596/126429897773511 9416110657944731420390625);\n aDA := evalf(5601536713889991944096759 62295798359/\n 3343600602274695976490996217471525000* SQRT6\n -142895477707667005408073764744257871889/919490165625541393 535023959804669375000);\n aDB := evalf(25891603831799418109943073002 627816034304/\n 132751392662187538691619084196799141015 625\n -2015820900148256583413808194683666432/\n \+ 39333745973981492945664913836088634375*SQRT6);\n aDC := evalf (73459998957708742701270272/183725078928931555763697741);\n aE1 := e valf(22174349882337032090130010525890693408309951424859/\n 4 022309999176318082193386838093709550597730429075456*SQRT6\n + 240994819239866969854044390572756477821689719112936179443993/\n \+ 885747373013148133598593749945518645723805382030108189360128);\n \+ aE6 := evalf(-768064817888172403884064753377704261/\n \+ 940463444140469168205260102483013120*SQRT6\n +11963091 4823826378711708444176454195599/\n 2566475240983332966 9180387533549594880);\n aE7 := evalf(-653164793592687107118792989902 3077763/\n 15987878550387975859489421742211223040*SQRT 6\n +43790224830262565404128923716569997461977/\n \+ 7890018064616466086658029629781238570240);\n aE8 := evalf (254822663198943144069287976003554026259454356075885/\n 2286 94960921161983075528239428434956233568591921152*SQRT6\n -5070 6747964936364580073605427257995964068151492840684769794379/\n \+ 12567259805413822544889138595006222343548797141141470089297920);\n \+ aE9 := evalf(-173309259198946518508017290895523890942574781527421065/ \n 643632448461948023120976165764338742307364958190027264*SQ RT6\n -206782541247304485916480723889873507514206648454698385 88843871/\n 214747605280010654265700724270645275825224690278 65383445163520);\n aEA := evalf(413917278561402032123984934653761139 5519351209694645/\n 3632640043251973257633071670807716121912 322279329792*SQRT6\n -996295525168014533584249990562964056889 0016596488294131977095/\n 5017797212161605958140518381049585 877750280597658659434205184);\n aEB := evalf(-4849356912669828016375 6882264559485385719968326429264/\n 1022009379194401151190314 91244813088718581507963023701*SQRT6\n +1334905913727543156493 499912008293290055598710128757608261648/\n 82944208193690339 5980006384798530262574309330676082452103135);\n aEC := evalf(7549765 5687102650367079923118974391699838134443246875/\n 8638906644 30637859158232569081656841740436939028967702*SQRT6\n -1804864 12628461472312239595265512693446271288811024706307414375/\n \+ 190236179396096938181154727539441154889236153364816861628679026);\n \+ aED := evalf(-75497655687102650367079923118974391699838134443246875/\n 199937247534814760429026834649082269681731630722023424*SQRT 6\n -39652143706527918736322054669951503274117987129408095163 13125/\n 118994344051261314917790877517933313011379914959600 3931160576);\n aF1 := evalf(1794719195014775448515420200476049713911 3136328047818566330183196725/\n 124933973558210657275849752648 2950134678127916837473168367022334672896*SQRT6\n -5250756019617 985297264081793009579781071539715016882115974477314123127171901223/\n \+ 39341500935973144819449854111801765525736780566685250197451281 854012551507083264);\n aF6 := evalf(-9110793451523011804199912156640 114203030736422895275/\n 10294048675413643557518123077579298 651554317652260864*SQRT6\n +126957986291904552064573540574508 8301645328322671076225/\n 2809191704316828518196393060907824 39517416510668276736);\n aF7 := evalf(111422075193801131478421767553 11427195549014478879715/\n 174998827482031940477808092318848 077076423400088434688*SQRT6\n +181126937037169399025625899107 638154787614727041398921515/\n 86361921362382762625798293559 351526037214947943642518528);\n aF8 := evalf(29189822690923884739467 3949867239374669437388803665564427432525004365/\n 22805407871 7368660106709865945300421409499540375094308511440584900608*SQRT6\n \+ -2845854820686467085974546826531932457730065088955356802785650724 2483959010403925/\n 58756787112167683821256275621522117343632 85409310134769749217419755121328979968);\n aF9 := evalf(-11800036056 029973195844247232626685261295281822086353537079125090877135/\n \+ 6808212584803593630409128524372620724730349649751266925779481086650 368*SQRT6\n +3126798364509189831430939468324967579163686341363 4077995745102893132692868676415/\n 10040278884701479667463764 851449408910214074207122798227474545889826119915870208);\n aFA := ev alf(360654682303031487304850338348790330263045229082807683573490739958 81045/\n 1502430185984751574898661410320071580611931211101572 3955302623750897664*SQRT6\n -504139334742625262197558240261710 56757675506348970419446103549852274262775245181/\n 1173006873 1450867313591379662122712556645544422209725572941372457554608160391168 );\n aFB := evalf(-9917138287725742518888960894654016343059913927147 963146510472048780/\n 158979507039119842227944879113319527579 10275177293063911109478648209*SQRT6\n +19568425313858075038020 471264512289927606160824675275547549955882916034776092/\n 727 6094412439049242762400512852278390974625354209039856169668038038273175 859);\n aFC := evalf(14210138549497363413720488237016684699051548138 02146740511512627078125/\n 9138059007941281744224563013477881 912608597854939585188377549247340024*SQRT6\n +425449331773622321 732578593920111214038721395355499233716657312200378729142003125/\n \+ 1315829533631340285122562723213331304213176605689025753170288133040 0597882399885368);\n aFD := evalf(-142101385494973634137204882370166 8469905154813802146740511512627078125/\n 21148953693840889042 12097119994013626677353793862127781745482252812288*SQRT6\n -11 3391058856459475505890992258441700268454828770176224250598930749379059 56021875/\n 6054336745345837497467327519285001349474644187029 993940071231134990642210537472);\n aFE := evalf(-1476945925979856715 78404267/484185434283353620790815154);\n aG1 := evalf(128/311);\n \+ aG6 := evalf(933836797249465937874074716755230897960575/\n \+ 100654665224611304912494211512993860159456\n -656606315456 1714846613955623646285619925/\n 36884062473820921761569720 70871520430144*SQRT6);\n aG7 := evalf(-69149162191900943563488254283 110557265315/\n 62702906205495566994668525204815847312448* SQRT6\n +364113227349244850288707318380279089645830885/\n \+ 30943884212412062311868917188576620648693088);\n aG8 := e valf(3041362614710517562239732781256137540120581985585/\n \+ 1172185277850381332435906452020470966793142866528*SQRT6\n - 1043358144220984884256004372474974079448195163040240185/\n \+ 115595751791703265670917336227326388809734211868050208);\n aG9 := e valf(-12473097219098403448281438469579028509573667740/\n 2 4728568691455810337720718394800260319995348203*SQRT6\n -316 762436926540222429467438871538796708746837530208990/\n 173 585589231894985451179761994748730297467724252943149);\n aGA := evalf (40673709986329983913968252403706830937048839445/\n 152949 24886226203328885679053312482303282696776*SQRT6\n -12550571 1725062771619653485154034742374337017381750705/\n 27540772 318835010469308584057619853980896149750098024);\n aGB := evalf(-6877 69906647583549689495908374564279205408222494720/\n 6281113 40264221387269116975906507338718451172730859*SQRT6\n +60917 7502125347843180348616081241335046310293684110536704/\n 16 3300516549796437960438285892651708589492690550340922711);\n aGC := e valf(4317331931087246966285983049669945333651699336000000/\n \+ 18582689840552028087523063605957151876289406148782963*SQRT6\n \+ -99233155103913139838658094543682598937953780563123879200000/\n \+ 5314374890011234548083503767397830802676063618321130389579 7);\n aGD := evalf(-927551782069525715413004170827527317776732279218 75/\n 92398778640988754595926017283178863599824696391968*S QRT6\n -182751897158951700400622476701757266760064068976591 0103125/\n 26424686269358185213825307768800606714997372423 4194599392);\n aGE := evalf(-60/563);\n aH1 := evalf(7437015288634 869666684697191122245816427005267745/\n 147432547435188166 191909236273418678914030296498176*SQRT6\n -4474469186830706 5739441705461998691640973939344808716067287/\n 60293850015 227432297453675698366543035629935693406399496192);\n aH6 := evalf(53 7843072327935342666482445932577617925/\n 15289038486054321 4200817376288219068416*SQRT6\n -710627365777577959402586510 08652519442575/\n 4172298134220613503322305768707451945984 );\n aH7 := evalf(6854794678291709986373282391786804521395/\n \+ 2599136542629234641413895396899724163072*SQRT6\n -309 66226229352135929780528052556881578083205/\n 1282673883787 527295537757378370013874476032);\n aH8 := evalf(-1449612891489645788 70742622820802443535339190630695/\n 2691229040483593509852 3114557846266785894419202048*SQRT6\n +177303340385747909539 121872496323334875760354476632016258075/\n 900492565162487 6252217107409496301881944730655508747976704);\n aH9 := evalf(3222260 8034056838728656037171998238877669428479655/\n 73038734437 101490420440329367070466851711700195328*SQRT6\n +6760751261 9182108117471027162012152342722969862360571773035/\n 15387 492972636167617579323485520628170551389838421424871424);\n aHA := ev alf(-79761678221705855321861185916831852148982905014135/\n \+ 14652837957573715651468612768155427864652000968704*SQRT6\n \+ +176524630341942564370679310614119420165080030154901156708275/\n \+ 17977224761033720344100094864610370786056328228932319330304); \n aHB := evalf(6458617329786749597264924964904699215303462802220/\n 2899413781016820498560674347184109100449107571463*SQRT6\n -246412281134139629347074918193067990307808564033163366722 0/\n 32338391541065128254020640576135009577978397211047896 4583);\n aHC := evalf(-577287472756557962739562036389160358616287922 03125/\n 9803340551400258047790872333016240810032658244730 4*SQRT6\n +858189023837039441719368905774677132862796822369 66620156153125/\n 2016609093676721434322453362779553231190 6882196016509631982904);\n aHD := evalf(5772874727565579627395620363 8916035861628792203125/\n 22688668916050941796615859889967 580415171626139648*SQRT6\n +1200428079547756024245650103539 89440943011927908685160428125/\n 9278732711790793205609329 771762884519446318089478465519616);\n aHE := evalf(-8979989085535398 480645/6602227802120746791424);\n aHG := evalf(2573860174572087/3215 704390486016);\n\n # weights\n b1 := evalf(54248687/1728663552);\n b8 := evalf(2235875/5723136);\n b9 := evalf(267227875/1186593408) ;\n bA := evalf(33324325/439883136);\n bB := evalf(1807745024/6104 6938953);\n bC := evalf(1205476400000000000/6851144673772576947);\n \+ bD := evalf(60488427734375/305788378742784);\n bE := evalf(-123928 8094975/3324665305728);\n bG := evalf(189018151911/873746857984);\n \+ bH := evalf(824401/27451872);\n\n # error coefficients\n e1 := e valf(-7311299418058418165/9940944123989018083328);\n e8 := evalf(131 648973475798430525/460764763471949561856);\n e9 := evalf(-2222771774 941999832825/54589494887767280336896);\n eA := evalf(356267968725527 81305/919860089395087712256);\n eB := evalf(-3587114974784997602816/ 21941234905507716235437);\n eC := evalf(11373756568272244657812500/3 512709986334916064429371563);\n eD := evalf(-14030206324451685753906 25/54952588650966835334381568);\n eE := evalf(-20947319750353157305/ 68424752446102880256);\n eF := evalf(-1276651587249325323367/3409909 6653247484694528);\n eG := evalf(189018151911/873746857984);\n eH \+ := evalf(824401/27451872);\n \n xstart := evalf(x0);\n xend:= ev alf(xn);\n \n sgn := sign(xend-xstart);\n h := sgn*hstrt;\n\n \+ eps := evalf(t);\n safety := 0.9;\n pgrow := -0.111111111111111111 11;\n pshrink := -0.125;\n errcontrol := 0.0000001983592905; #(5/s afety)^(1/pgrow)\n tiny := Float(1,-3*saveDigits);\n \n xk := eva lf(x0);\n yk := evalf(y0);\n \n if ymaxtemp<>0 then\n ymax \+ := abs(evalf(ymaxtemp))\n else\n ymax := max(abs(yk),tiny)\n \+ end if;\n \n soln := NULL;\n finished := false;\n f1 := fn(xk, yk);\n\n for k from 1 to maxstps do\n if errcntl=0 then yscale \+ := max(abs(yk),abs(f1*h),tiny)\n elif errcntl=1 then yscale := ma x(abs(yk),tiny)\n elif errcntl=2 then yscale := abs(ymax)\n \+ else yscale := max(abs(f1*h),tiny) end if;\n \n if abs(h)>=h mx then\n h := sgn*hmx;\n maxstepsize := true;\n \+ else\n maxstepsize := false;\n end if;\n if abs(h)<= hmn then\n h := sgn*hmn;\n minstepsize := true;\n \+ else\n minstepsize := false;\n end if;\n if (xk+h-x end)*(xk+h-xstart)>0 then \n h := xend-xk;\n laststep \+ := true;\n else\n laststep := false;\n end if;\n\n \+ # Do step.\n do\n t := a21*f1;\n f2 := fn(xk \+ + c2*h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(x k + c3*h,yk + t*h);\n t := a41*f1 + a43*f3;\n f4 := fn (xk + c4*h,yk + t*h);\n t := a51*f1 + a53*f3 + a54*f4;\n \+ f5 := fn(xk + c5*h,yk + t*h);\n t := a61*f1 + a64*f4 + a65* f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a7 4*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h);\n \+ t := a81*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t *h);\n t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA6*f6 + aA7*f7 + aA8 *f8 + aA9*f9;\n fA := fn(xk + cA*h,yk + t*h); \n t := \+ aB1*f1 + aB7*f7 + aB8*f8 + aB9*f9 + aBA*fA;\n fB := fn(xk + cB *h,yk + t*h); \n t := aC1*f1 + aC6*f6 + aC7*f7 + aC8*f8 + aC9* f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n \+ t := aD1*f1 + aD6*f6 + aD7*f7 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + \+ aDC*fC;\n fD := fn(xk + cD*h,yk + t*h);\n t := aE1*f1 \+ + aE6*f6 + aE7*f7 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + \n \+ aEC*fC + aED*f D;\n fE := fn(xk + cE*h,yk + t*h); \n t := aF1*f1 + aF6*f6 + aF7*f7 + aF8*f8 + aF9*f9 + aFA*fA + aFB*fB + \n \+ aFC*fC + aFD*fD + aFE*fE ;\n fF := fn(xk + h,yk + t*h);\n t := aG1*f1 + aG6*f6 \+ + aG7*f7 + aG8*f8 + aG9*f9 + aGA*fA + aGB*fB + \n \+ aGC*fC + aGD*fD + aGE*fE;\n \+ fG := fn(xk + cG*h,yk + t*h);\n t := aH1*f1 + aH6*f6 + aH7 *f7 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + \n \+ aHC*fC + aHD*fD + aHE*fE + aHG*fG;\n f H := fn(xk + h,yk + t*h);\n t := b1*f1 + b8*f8 + b9*f9 + bA*fA + bB*fB + bC*fC + bD*fD + bE*fE + \n \+ bG*fG + bH*fH;\n yout := \+ yk + t*h;\n\n # error estimate\n yerr := (e1*f1 + e8*f 8 + e9*f9 + eA*fA + eB*fB + eC*fC + eD*fD +\n \+ eE*fE + eF*fF + eG*fG + eH*fH)*h;\n \+ \n err := abs(yerr/yscale)/eps;\n if err<=1.0 or minst epsize then break end if;\n \n # Shrink, but not too m uch.\n if prntflg then\n print(`reducing step-size \+ and repeating step`);\n end if;\n htemp := safety*h*er r^pshrink;\n if h>=0 then\n h := max(htemp,0.1*h)\n else\n h := min(htemp,0.1*h)\n end if;\n \+ if maxstepsize then maxstepsize := false end if;\n if a bs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true;\n end if;\n end do;\n\n soln := soln,[xk,yk]; \n \n if err>errcontrol then\n hnext := safety*h*err ^pgrow;\n inc := false;\n else\n hnext := 5*h;\n \+ inc := true;\n end if;\n \n xk := xk + h;\n yk \+ := yout;\n f1 := fn(xk,yk);\n if prntflg then\n prin t(`abs err estimate -> `,evalf(abs(yerr),5),`abs err bound -> `,evalf( abs(yscale)*eps,5));\n print('step',k,` `,h,` `,[xk,yk]); \n if laststep then\n print(`last step`);\n \+ elif inc then\n print(`increasing step-size by a factor of 5`)\n elif maxstepsize then\n print(`used maximum \+ step-size`)\n elif not minstepsize then\n print(`us ing error to adjust step-size`)\n else \n print(`us ed minimum step-size`)\n end if;\n print(``);\n e nd if;\n \n if (xk-xend)*(xend-xstart)>=0 then\n fin ished := true;\n break;\n end if;\n\n if abs(yk)>yma x then ymax := abs(yk) end if;\n h := hnext;\n end do;\n\n if not finished and k>=maxstps then\n error \"reached maximum numbe r of steps before reaching end of interval\"\n end if;\n\n soln := soln,[xk,yk];\n if outpt='rkstep' then\n eqns := \{SOLN_=[soln ],FXY_=fxy,X_=x,Y_=y,c3_=c3,c5_=c5,c6_=c6,c7_=c7,\n cE_=cE,cG_ =cG,a31_=a31,a32_=a32,a51_=a51,a53_=a53,a54_=a54,\n a61_=a61,a 64_=a64,a65_=a65,a71_=a71,a74_=a74,a75_=a75,a76_=a76,\n a81_=a 81,a86_=a86,a87_=a87,a91_=a91,a96_=a96,a97_=a97,a98_=a98,\n aA 1_=aA1,aA6_=aA6,aA7_=aA7,aA9_=aA9,aB1_=aB1,aB7_=aB7,aB8_=aB8,\n \+ aB9_=aB9,aBA_=aBA,aC1_=aC1,aC6_=aC6,aC7_=aC7,aC8_=aC8,aC9_=aC9,\n \+ aCA_=aCA,aCB_=aCB,aD1_=aD1,aD6_=aD6,aD7_=aD7,aD8_=aD8,aD9_=aD9, \n aDA_=aDA,aDB_=aDB,aDC_=aDC,aE1_=aE1,aE6_=aE6,aE7_=aE7,aE8_= aE8,\n aE9_=aE9,aEA_=aEA,aEB_=aEB,aEC_=aEC,aED_=aED,aG1_=aG1,a G6_=aG6,\n aG7_=aG7,aG8_=aG8,aG9_=aG9,aGA_=aGA,aGB_=aGB,aGC_=a GC,aGD_=aGD,\n aGE_=aGE,aH1_=aH1,aH6_=aH6,aH7_=aH7,aH8_=aH8,aH 9_=aH9,aHA_=aHA,\n aHB_=aHB,aHC_=aHC,aHD_=aHD,aHE_=aHE,aHG_=aH G,b1_=b1,b8_=b8,b9_=b9,\n bA_=bA,bB_=bB,bC_=bC,bD_=bD,bE_=bE,b G_=bG,bH_=bH\};\n return subs(eqns,eval(rk89step));\n else\n \+ return evalf[saveDigits]([soln]);\n end if;\nend proc: # of rungk 89b" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "rungk910: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66638 "rungk910 := proc(fxy, eqn1,eqn2) \n local ytemp,fn,soln,xk,yk,k,xend,xstart,h,c2,c3,c4,c5, c6,c7,c8,c9,cA,cB,cC,\n cD,cE,cF,cG,cH,a21,a31,a32,a41,a43,a51,a53,a 54,a61,a64,a65,a71,a74,a75,a76,\n a81,a86,a87,a91,a96,a97,a98,aA1,aA 6,aA7,aA8,aA9,aB1,aB6,aB7,aB8,aB9,aC1,aC8,\n aC9,aCA,aCB,aD1,aD8,aD9 ,aDA,aDB,aDC,aE1,aE8,aE9,aEA,aEB,aEC,aED,aF1,aF8,aF9,\n aFA,aFB,aFC, aFD,aFE,aG1,aG8,aG9,aGA,aGB,aGC,aGD,aGE,aGF,aH1,aH8,aH9,aHA,aHB,\n a HC,aHD,aHE,aHF,aHG,aI1,aI8,aI9,aIA,aIB,aIC,aID,aIE,aIF,aIG,aIH,f1,f2,f 3,f4,\n f5,f6,f7,f8,f9,fA,fB,fC,fD,fE,fF,fG,fH,fI,b1,bC,bD,bE,bF,bG, bH,bI,yout,yerr,\n rs,hmx,xmid,ymid,hmn,hstrt,temp,sgn,maxstps,tiny, yscale,err,htemp,hnext,fk,\n saveDigits,eps,Options,j,prntflg,t,tt,e rrcntl,ymax,ymaxtemp,x,y,yv,xx,yy,hh,\n ct,errc,x0,y0,xn,f,outpt,min stepsize,ftd,inc,rk910step,maxstepsize,laststep,\n safety,pgrow,pshr ink,errcontrol,eqns,SQRT7;\n\nrk910step := proc(x_rk910step::realcons) \n local c2,c3,c4,c5,c6,c7,c8,c9,cA,cB,cC,cD,cE,cF,cG,cH,a21,a31,a32 ,a41,\n a43,a51,a53,a54,a61,a64,a65,a71,a74,a75,a76,a81,a86,a87,a91, a96,a97,a98,aA1,\n aA6,aA7,aA8,aA9,aB1,aB6,aB7,aB8,aB9,aC1,aC8,aC9,a CA,aCB,aD1,aD8,aD9,aDA,aDB,\n aDC,aE1,aE8,aE9,aEA,aEB,aEC,aED,aF1,aF 8,aF9,aFA,aFB,aFC,aFD,aFE,aG1,aG8,aG9,\n aGA,aGB,aGC,aGD,aGE,aGF,aH1 ,aH8,aH9,aHA,aHB,aHC,aHD,aHE,aHF,aHG,aI1,aI8,aI9,\n aIA,aIB,aIC,aID, aIE,aIF,aIG,aIH,f1,f2,f3,f4,f5,f6,f7,f8,f9,fA,fB,fC,fD,fE,\n fF,fG,f H,fI,b1,bC,bD,bE,bF,bG,bH,bI,xk,yk,t,jF,jM,jS,n,h,data,fn,xx,ys,\n s aveDigits;\n options `Copyright 2007 by Peter Stone`;\n \n data \+ := SOLN_;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(D igits)),Digits+10);\n\n # procedure to evaluate the slope field\n \+ fn := proc(X_,Y_)\n local val; \n val := traperror(evalf(FXY _));\n if val=lasterror or not type(val,numeric) then\n e rror \"evaluation of slope field failed at %1\",evalf([X_,Y_],saveDigi ts);\n end if;\n val;\n end proc;\n\n xx := evalf(x_r k910step);\n n := nops(data);\n\n if (data[1,1] data[n,1] or xxdata[1,1])) then\n error \"independent variable is o utside the interpolation interval: %1\",evalf(data[1,1])..evalf(data[n ,1]);\n end if;\n\n c2 := c2_; c3 := c3_; c4 := c4_; c5 := c5_; c6 := c6_; c7 := c7_; c8 := c8_;\n c9 := c9_; cA := cA_; cB := cB_; cC := cC_; cD := cD_; cE := cE_; cF := cF_;\n cG := cG_; cH := cH_; \n a21 := c2; a31 := a31_; a32 := a32_; a41 := a41_; a43 := a43_; a51 \+ := a51_;\n a53 := a53_; a54 := a54_; a61 := a61_; a64 := a64_; a65 : = a65_; a71 := a71_;\n a74 := a74_; a75 := a75_; a76 := a76_; a81 := a81_; a86 := a86_; a87 := a87_;\n a91 := a91_; a96 := a96_; a97 := \+ a97_; a98 := a98_; aA1 := aA1_; aA6 := aA6_; \n aA7 := aA7_; aA8 := \+ aA8_; aA9 := aA9_; aB1 := aB1_; aB6 := aB6_; aB7 := aB7_;\n aB8 := a B8_; aB9 := aB9_; aC1 := aC1_; aC8 := aC8_; aC9 := aC9_; aCA := aCA_; \+ \n aCB := aCB_; aD1 := aD1_; aD8 := aD8_; aD9 := aD9_; aDA := aDA_; \+ aDB := aDB_;\n aDC := aDC_; aE1 := aE1_; aE8 := aE8_; aE9 := aE9_; a EA := aEA_; aEB := aEB_;\n aEC := aEC_; aED := aED_; aF1 := aF1_; aF 8 := aF8_; aF9 := aF9_; aFA := aFA_;\n aFB := aFB_; aFC := aFC_; aFD := aFD_; aFE := aFE_; aG1 := aG1_; aG8 := aG8_;\n aG9 := aG9_; aGA \+ := aGA_; aGB := aGB_; aGC := aGC_; aGD := aGD_; aGE := aGE_;\n aGF : = aGF_; aH1 := aH1_; aH8 := aH8_; aH9 := aH9_; aHA := aHA_; aHB := aHB _;\n aHC := aHC_; aHD := aHD_; aHE := aHE_; aHF := aHF_; aHG := aHG_ ; aI1 := aI1_;\n aI8 := aI8_; aI9 := aI9_; aIA := aIA_; aIB := aIB_; aIC := aIC_; aID := aID_; \n aIE := aIE_; aIF := aIF_; aIG := aIG_; aIH := aIH_; b1 := b1_; bC := bC_;\n bD := bD_; bE := bE_;bF := bF_ ; bG := bG_; bH := bH_; bI := bI_;\n # Perform a binary search for t he interval containing x.\n n := nops(data);\n jF := 0;\n jS := \+ n+1;\n\n if data[1,1]1 do\n \+ jM := trunc((jF+jS)/2);\n if xx>=data[jM,1] then jF := jM els e jS := jM end if;\n end do;\n if jM = n then jF := n-1; jS \+ := n end if;\n else\n while jS-jF> 1 do\n jM := trunc((j F+jS)/2);\n if xx<=data[jM,1] then jF := jM else jS := jM end i f;\n end do;\n if jM = n then jF := n-1; jS := n end if;\n \+ end if;\n \n # Get the data needed from the list.\n xk := data[j F,1];\n yk := data[jF,2];\n\n # Do one step with step-size ..\n \+ h := xx-xk;\n f1 := fn(xk,yk);\n t := a21*f1;\n f2 := fn(xk + c2 *h,yk + t*h);\n t := a31*f1 + a32*f2;\n f3 := fn(xk + c3*h,yk + t* h);\n t := a41*f1 + a43*f3;\n f4 := fn(xk + c4*h,yk + t*h);\n t \+ := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xk + c5*h,yk + t*h);\n t : = a61*f1 + a64*f4 + a65*f5;\n f6 := fn(xk + c6*h,yk + t*h);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xk + c7*h,yk + t*h); \n t := a81*f1 + a86*f6 + a87*f7;\n f8 := fn(xk + c8*h,yk + t*h); \n t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n f9 := fn(xk + c9*h,yk + t*h);\n t := aA1*f1 + aA6*f6 + aA7*f7 + aA8*f8 + aA9*f9;\n fA : = fn(xk + cA*h,yk + t*h);\n t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9;\n fB := fn(xk + cB*h,yk + t*h);\n t := aC1*f1 + aC8*f8 + \+ aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xk + cC*h,yk + t*h);\n t := a D1*f1 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*fC;\n fD := fn(xk + \+ cD*h,yk + t*h);\n t := aE1*f1 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + \+ aEC*fC + aED*fD;\n fE := fn(xk + cE*h,yk + t*h);\n t := aF1*f1 + a F8*f8 + aF9*f9 + aFA*fA + aFB*fB + aFC*fC + aFD*fD + aFE*fE;\n fF := fn(xk + cF*h,yk + t*h);\n t := aG1*f1 + aG8*f8 + aG9*f9 + aGA*fA + \+ aGB*fB + aGC*fC + aGD*fD + aGE*fE\n \+ + aGF*fF;\n fG := fn(xk + cG*h, yk + t*h); \n t := aH1*f1 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + a HC*fC + aHD*fD + aHE*fE\n \+ + aHF*fF + aHG*fG;\n fH := fn(xk + cH*h,yk + t*h); \n t := aI1*f1 + aI8*f8 + aI9*f9 + aIA*fA + aIB*fB + aIC*fC + aID* fD + aIE*fE\n + a IF*fF + aIG*fG + aIH*fH;\n fI := fn(xk + h,yk + t*h); \n t := b1* f1 + bC*fC + bD*fD + bE*fE + bF*fF + bG*fG + bH*fH + bI*fI;\n \n ys := yk + t*h;\n Digits := saveDigits;\n evalf(ys);\nend proc: # of rk910step\n\n # start of main procedure rungk9_10\n x := lhs(eqn1 );\n y := lhs(eqn2);\n rs := rhs(eqn1);\n x0 := lhs(rs);\n xn \+ := rhs(rs);\n y0 := rhs(eqn2);\n\n # Get the options.\n # Set th e default values to start with.\n maxstps := 2000;\n t := Float(1, -Digits);\n hmx := 0.5;\n hstrt := evalf(0.5*10^(-ceil(Digits/10)) );\n hmn := min(0.000005,hstrt/2000);\n errcntl := 0;\n ymaxtemp := 0;\n outpt := 'rkstep';\n prntflg := false;\n Options := []; \n if nargs>3 then\n Options:=[args[4..nargs]];\n if not t ype(Options,list(equation)) then\n error \"each optional argum ent must be an equation\"\n end if;\n if hasoption(Options,' maxsteps','maxstps','Options') then\n if not type(maxstps,posi nt) then\n error \"\\\"maxsteps\\\" must be a positive inte ger\"\n end if;\n end if;\n if hasoption(Options,'to lerance','t','Options') then \n tt := evalf(t); \n if \+ not type(tt,float) or \n tt>Float(1,-iquo(Digits,2)) or tt< Float(1,-Digits*2) then\n error \"\\\"tolerance\\\" must ev aluate to a float between %1 and %2\",Float(1,-Digits*2),Float(1,-iquo (Digits,2));\n end if;\n end if;\n if hasoption(Opti ons,'hmax','hmx','Options') then\n if not type(hmx,realcons) o r evalf(hmx)<=0 or has(hmx,infinity) then\n error \"\\\"hma x\\\" must be a finite positive real constant\"\n end if;\n \+ end if;\n if hasoption(Options,'hstart','hstrt','Options') the n\n if not type(hstrt,realcons) or evalf(hstrt)<=0 or has(hstr t,infinity) then\n error \"\\\"hstart\\\" must be a finite \+ positive real constant\"\n end if;\n hmn := min(0.0000 05,hstrt/2000);\n end if;\n if hasoption(Options,'hmin','hmn ','Options') then\n if not type(hmn,realcons) or evalf(hmn)<=0 or has(hmn,infinity) then\n error \"\\\"hmin\\\" must be a finite positive real constant\"\n end if;\n end if;\n \+ if evalf(hstrt>hmx) or evalf(hstrtt rue then prntflg := false end if; \n end if;\n if nops(Optio ns)>0 then\n error \"%1 is not a valid option for %2\",op(1,Op tions), procname;\n end if;\n end if;\n\n if prntflg then\n \+ print(`method: modified Curtis 18 stage, order 10`);\n print( `error control is by means of step-doubling`);\n print(``);\n e nd if;\n\n saveDigits := Digits;\n Digits := max(trunc(evalhf(Digi ts)),Digits+5);\n \n # procedure to evaluate the slope field\n f n := subs(\{FXY_=evalf(fxy),X_=x,Y_=y\},\n proc(X_,Y_)\n loc al val; \n val := traperror(evalf(FXY_));\n if val=lasterror or not type(val,numeric) then\n error \"evaluation of slope f ield failed at %1\",evalf([X_,Y_],saveDigits);\n end if;\n v al;\n end proc);\n\n ## coefficients modified from those of Cur tis\n # nodes\n c2 := evalf(.1452518960316150517617548528770033320 3145112513299470608384687419839764556071796734006151055654173255935676 6259783846610433302866936968257450229815186369441153530162692797970596 4491845630701618039266026726839122381024118349811782918371627376009570 3872043669863242224216809789150751709466174343149224459836915159176755 4382698510450270037939827384337617484948713229888735059839860721526576 6952639925939415541532549550174053209064725015253834468040523804415951 457102521100298113257526671516447795421971380010);\n c3 := c2;\n c 4 := evalf(.2178778440474225776426322793155049980471766876994920591257 7031129759646834107695101009226583481259883903514938967576991564995430 0405452386175344722779554161730295244039196955894673776844605242705889 9040090258683571536177524717674377557441064014355580806550479486333632 5214683726127564199261514723836689755372738765133157404776567540505690 9741076506426227423069844833102589759791082289865042895988890912331229 8824325261079813597087522880751702060785706623927185653781650447169886 290007274671693132957070015);\n c5 := evalf(.54469461011855644410658 0698288762495117941719248730147814425778243991170852692377525230664587 0314970975878734741894247891248857510136309654383618069488854043257381 1009799238973668444211151310676472476002256467089288404438117941859438 9360266003588895201637619871583408130367093153189104981537868095917243 8843184691283289351194141885126422743526912660655685576746120827564743 9947770572466260723997222728082807470608131526995339927188072018792551 51964266559817964134454126117924715725018186679232832392675037);\n c 6 := evalf(.6536335321422677329278968379465149941415300630984761773773 1093389278940502323085303027679750443779651710544816902730974694986290 1216357158526034168338662485190885732117590867684021330533815728117669 7120270776050714608532574153023132672323192043066742419651438459000897 5644051178382692597784544171510069266118216295399472214329702621517072 9223229519278682269209534499307769279373246869595128687966672736993689 6472975783239440791262568642255106182357119871781556961344951341509658 870021824015079398871210042);\n c7 := evalf(.27465949199052540088080 2163024761852089215086512740729392208586873763547540254353349835074054 2025745718195744034983301700287980080735433115841578008726906516096932 2144206603307266056265964709000972327951842597337246755292317428064936 8060471302059704247766877320710143968923427084619721735602048867510878 2203960873326497321144702088796436288418291274619888916563064770906389 5780285993192854637576912199809239062351962115958964204465650644356234 54658500449838723780364652662075223497051170650669675007842454);\n c 8 := evalf(.7735775201106609448405825008093973718589542913426807556412 6626730546079380290433865009322629886697590743751881043803326414888409 1074917058425159974342794280667149127966380750630568244327885681772827 4929545863153699403384838246524688627439920886386487414433509721751947 7113661572370553976120624215217630906798187523887037854813936257901196 5054215538950559300721534146998673530980089001269729219779828945905066 8923476662362781009757611422242274697513016934683567284758003336320735 305894162221457561565877089);\n c9 := evalf(.58018314008299570863043 6875607048028894215718507010566730949700479095595352178253987569919724 1502319305781391078285249481116630683061877938188699807570957105003618 4597478556297292618324591426132962061971593973652745525386286848935164 7057994066478986556082513229131396078352461792779154820904681614132231 8009864064291527839111045219342589737906616542129194755411506102490051 4823506675095229691483487170942880016926074967720857573182085666817060 23134762701012675463568502502240551479420621666093171174407780);\n c A := evalf(.1174723380352676535744985130203309248171321557319478803362 0882208147234148058674293825136463513306345222636963566302723107448834 7336957066109646958552140136219150084289589590065763360965766326255448 8000333038517052445463797183511722636725858985429165571612270306541192 0243071334566413096665643737579703766484781912643739047932053724380282 1148702207436360098824290550238532441549665687797718932043342951445813 3942229883370509988779630647665975552728543592731064133995517475866825 660531789327429053458004470);\n cB := evalf(.35738424175967745184292 4502979560464040498263636787304090124791736151034542900200909162135997 4684913479003254571971764982803123160619097953357069249335251798585292 0715208532113654313477507261400988170762007225179847638245502818979431 3565335746925826431067705444483331079932219374610897866014909773778123 4559050909598776959262437975029768133429779793459378458022261561071364 3652423875902119773130727393311605259015456370098254753062328267148681 02098182061674441427924908712057484203326064974293576900196793);\n c C := 1-cB;\n cD := cA;\n cE := 1-cA;\n cF := cB;\n cG := cC;\n cH := cE;\n \n ## linking coefficients\n a21 := c2;\n a31 : = evalf(.7262594801580752588087742643850166601572556256649735304192343 7099198822780358983670030755278270866279678383129891923305216651433468 4841287251149075931847205767650813463989852982245922815350809019633013 3634195611905120591749058914591858136880047851936021834931621112108404 8945753758547330871715746122299184575795883777191349255225135018969913 6921688087424743566149443675299199303607632883476319962969707770766274 7750870266045323625076269172340202619022079757285512605501490566287633 357582238977109856900048e-1);\n a32 := a31;\n a41 := evalf(.544694 6101185564441065806982887624951179417192487301478144257782439911708526 9237752523066458703149709758787347418942478912488575101363096543836180 6948885404325738110097992389736684442111513106764724760022564670892884 0443811794185943893602660035888952016376198715834081303670931531891049 8153786809591724388431846912832893511941418851264227435269126606556855 7674612082756474399477705724662607239972227280828074706081315269953399 2718807201879255151964266559817964134454126117924715725018186679232832 392675035e-1);\n a43 := evalf(.1634083830355669332319742094866287485 3538251577461904434432773347319735125580771325756919937610944912927636 2042256827436737465725304089289631508542084665621297721433029397716921 0053326334539320294174280067694012678652133143538255783168080798010766 6856049128596147502243911012794595673149446136042877517316529554073849 8680535824256553792682305807379819670567302383624826942319843311717398 7821719916681842484224118243945809860197815642160563776545589279967945 389240336237835377414717505456003769849717802511);\n a51 := c5;\n \+ a53 := evalf(-2.042604787944586665399677618582859356692281447182738054 3040966684149668906975964157196149922013681141159545255282103429592183 2156630111612039385677605832026622151791286747146151256665791817415036 7717850084617515848315166429422819728960100997513458357006141074518437 7804888765993244591436807670053596896645661942592312335066978032069224 0852882259224774588209127979531033677899804139646748477714989585230310 5280147804932262325247269552700704720681986599959931736550420297294221 768396881820004712312147253139);\n a54 := -a53;\n a61 := evalf(.65 3633532142267732927896837946514994141530063098476177377310933892789405 0232308530302767975044377965171054481690273097469498629012163571585260 3416833866248519088573211759086768402133053381572811766971202707760507 1460853257415302313267232319204306674241965143845900089756440511783826 9259778454417151006926611821629539947221432970262151707292232295192786 8226920953449930776927937324686959512868796667273699368964729757832394 4079126256864225510618235711987178155696134495134150965887002182401507 9398871210027e-1);\n a64 := evalf(.326816766071133866463948418973257 4970707650315492380886886554669463947025116154265151383987522188982585 5272408451365487347493145060817857926301708416933124259544286605879543 3842010665266907864058834856013538802535730426628707651156633616159602 1533371209825719229500448782202558919134629889227208575503463305910814 7699736107164851310758536461161475963934113460476724965388463968662343 4797564343983336368496844823648789161972039563128432112755309117855993 5890778480672475670754829435010912007539699435605026);\n a65 := eval f(.2614534128569070931711587351786059976566120252393904709509243735571 1576200929234121211071900177511860684217926761092389877994516048654286 3410413667335464994076354292847036347073608532213526291247067884810831 0420285843413029661209253068929276817226696967860575383600359025762047 1353077039113817668604027706447286518159788885731881048606829168929180 7711472907683813799723107711749298747838051475186669094797475858919031 3295776316505027456902042472942847948712622784537980536603863548008729 606031759548484014);\n a71 := evalf(.8233707757482716585173454344310 1252960668143185217422417623190517729636276959552630338427195208156074 9057128539248740162294754018566632145268442498240853026501249587564943 6964577162815499784391844154251516757783441246537637065734409273022094 6299233373915128860570981937149008855462300751157609369949672821416323 1377591505461365236050729455904581497454571182398914713814626127258839 9022237614736777380433145332416738674461185882928270769497656900322786 855077263133895921073529784408262111797856608687097657e-1);\n a74 := evalf(.21191719632028035616878434685553055531756588076292743129029855 9484008657022456715266369613585649942284664547478473710950926047083538 1351367546064604540662877550401996678728267405331858476358314139588365 2094577149124258069020841178906843200460941449781945159946224217677833 9872690929245469601064632088623594849667233447948195224982239174650863 2929187100848732561372190096028950133179693271192534435919291932028297 8883292400016192371705811872529314413880303771133682568025303454374895 97300716880144897526715);\n a75 := evalf(-.3997343508054218311577932 5500613201623798400498163478076301187861076744778502065796282802730621 4950091431010987581510683005672610199523064033675578392470752115170863 1864340115908387110223622083681133593777807385098468226242995783951175 7517627476658990042245044398674992348233548097340617258506884776561053 3007284967218867025564932527687985466219213858087348104297514214129170 1569904648585913592688512720219981871400797485470419896950143277836100 682656988230775422050751299511803862038074626035682075572547e-1);\n \+ a76 := evalf(.20378653175960061976062598226743245434779463062759353760 5880247331019990193401512494098360039659712213924151698578962711738427 8369869726670607464843378613641604514933634223784543961975924963551413 4236420090697897797189119025169355718655763373822632044442394042295660 2457827790863255161321018817502491428574308254581645200756651962881648 3093469998039225563497070753812098636707935701886491011088464139176993 4288277409465832325490626242062638844325309943277696164092333315432798 79528314662166074374491632281e-1);\n a81 := evalf(.85953057790073438 3156202778677108190954393657047423061823629185894956437558782598500103 5847765188621193750209004867036268320934345276856204723999714919936451 8572125329597861181174249369765075752536388106065146152215593164869405 8298736382213431820720823825945524639105301262906359672821956895824613 5292322977576391543004206090437361989021833935728210561770008017046077 7630392331121000141081024419980993989451876927518470697566775084571358 24749663903352149648408094175559262578594784326846912730623962085596e- 1);\n a86 := evalf(.291176947805885096033717962176155339985602604959 8393013981874594942289837064329699999800834314082084664603036705378787 3171602280531901676944703271533763470341023398594679077325089689082987 0214384041881242503413539557747613055259199508556795386305098052558396 7480237052055722341134236837491134141721353298023272118254222529618359 9207184877608223462955904116454940017335814235799526359255507655431915 3039999293754407579832185484172338235741052726449208816236730307364518 2221776655223040370242257565714922103);\n a87 := evalf(.396447514514 7024104912442607655312127779123206780991480607158892217361663405931088 0010278438980688122903971304985148416974965194230313172693088726185596 0212738343016689992116198497104128250391636249223606017755678166997705 8999874394805489753591514786065023596716875790354380909743145738164032 4551868805603587889949801808352539899688727297063262362728590043609196 3512862900780653704408573571641040694911916321261012567933395050028338 3351249272466630593557351423401695265188286220604421107287926933454746 426);\n a91 := evalf(.8612093485606967549983047372292119178898514571 5884380999125346164865752435088959576279909959053550052195192523818296 6719853249867016997506449885127686313945273974615118822320037937303255 6539816611556073908480464079413924526954138813511017099424297456691849 8057449191605380443547365655793728038677097753157958919704327366361804 5774746165664220513392972302346506395437088367016911427208444815732958 0126936833752512464253021064796019215841168157378090663384315690141234 495901763318602264985285607050962011565e-1);\n a96 := evalf(.1397464 8268244420890363138910011898010744253145823267377162885635211835954550 9026848027937030730232324325444540808169747530212480572509630358944613 4195204030963470460127370290842789976323079601565814582914440846726622 9610152419384759003621647763952832663334403609324966043844506344265196 4739296083449147878900769282418059029390705441614634763290200792713649 6089447464576371767823906376508918418885785565717241373903111581446942 8932355557871520526011565374098685267247364615748633736441972809322481 06893204);\n a97 := evalf(.39510984958156745999005260560012842152941 2584040417692433465398777047892419780301046763082714970762736676277449 2212516890102269105222572420678261500909272050211740307452684117813873 2754751924950666255050918785993858551605330769477345959537180239578740 4755222847012256099292730651775631385782207279579003312633574144457163 6386587757165303566999760116848214919055534723656644442468115233832568 7647481880055795101864694245053196146344879666225456874762028275861916 66252476782678145021446688317497394069513963);\n a98 := evalf(-.4079 4127037085635763077592816120564531624542707524180473269900814936409048 2000334835010099806043131826187754060191931604141013094902788292528892 9552198329214455669229510210989653387225947834649973894982377701272458 6697537232940657537683765207799303742224551711423301286759157469804784 3233448604259936725485068567020498051187495366985025840946558975618459 0062398715228313317448527813092633337682432691706921251190114646167872 7981143653984480745475166300241495374353216033218878877589676246089717 60982005432e-1);\n aA1 := evalf(.72331444223379480776163482291193263 1558293087108902073309290089120612938193779520477840985080910888115432 8238749658657292651759640201338528597440288106986927373040715464544034 3792325216373295314288664388822676866800620941143435356157851686877059 1129363226551505517128480320058787699304649636107665450002725833801948 1872710839577903507873338276966849127968819477003092163232487326585903 5825869450389715344881527246607413076259810073823935882515972679163536 87781014102271784333808427823263184762229245322729e-1);\n aA6 := eva lf(.220027628468999810214097273573507006137324280018118745995121934736 1114857342828430157483094684629664730327242711593902148497634169001562 3830969870319876839063890408913766969380763235481898924699224682066826 4881817151340940065009478780597188904549441299807829131912525332608599 6862605377214775182796832249576293315203500924031435850700575296146331 5724376898807683507100184310101040605535055962202320412517896675109243 5528698269929021232670969214294352835983074650444055787123589153235410 0391199867710878604);\n aA7 := evalf(.878953342543673401336978026479 2573637952226487753296416823846876217040795688489371334397240069873295 5106671614959322443359380408442517464376695256593340769913451266807476 5904346971250785112238090498420747956107825935088281777773083209809558 4185933093538727649456148476702075443700744097831266500079586447782132 7901565077267912578454717709828713560736212576775395736171850626214169 2415680776083757264880269210620969397688677674298463081098063906847157 2007009240155622510003520969764084048763725214493683430e-1);\n aA8 : = evalf(-.444538399626035086399067488061110898683286064819603000058000 4690002268108984238641729921233570494518449416022161984810706424383620 0653824201060462992145774650369088113741901876477181968591730630927843 7389728009114226674999590461036788063499171360779426773244331677915447 9505936719635110222110174013568760373956455657341454923049428198263839 4122810438931800909735590239818231966346059338792953794909055450267288 3723775676150860218145351641216288640009286576659687910252382715165935 6567777137230061823406338e-1);\n aA9 := evalf(-.21832822894887546890 9553296686183990987215091392633737152280543428848164940116559421325803 4064147796029621484163324238929969292382070761976616609411288931189565 6659069646023264388126217951570922920868335960651684987825682970882486 7316950895807788890671679209313203812200435587289177427095876254931091 3644394466559337230917509009110340685132832913685959693533129746976169 7537858182940881795121401106832165468865784061680597621226916376478593 89368148924316592724799507266191439377755356264544896552444434116);\n \+ aB1 := evalf(.894710093673111422878544196677383616907103839088285721 1057269158522704971585365845223314484209822032966169036316821922056715 9946200932687510400042999618933734208374533225451741016415885479874752 9206390514325874305847080121516964342298263739526885709110399736104489 6231907707025616583082186143981386039745526586227968085097071441834965 8210489832736671107138305860710659180498723172050175468990319629662357 0856627702005998362943671093282950122674922318092030891279006846917911 8936613889568216806026934921461e-1);\n aB6 := evalf(.394600817028556 1860741397654755022300929434262701385530048127140223687993778661654316 1960300608032104595065704897842876777483253712864758580890429614632748 3144432512514274943096625720522534893823399056144974113581720721420876 7551268425721046784777112006119345292020804328022912076100247022707706 6034005321926736546928159780005171971636541529306347955588660770782772 4394301719741563262422746811554461155510317984115422510803764192359571 9863916636426362961098752359947472060627591257437601756055337717664162 );\n aB7 := evalf(.3443011367963333487713764986067104675654371857504 6702906880867606963545961955963540108811060009349637193508852404791707 1802483717331595353512014459360150722037322865809371861239262625844862 5356549775535900867344228379190640278481595169879514072999366217687102 7681839628889664461100714336662009863979216830260997768627782709125400 0833782057983294960238530359887994281164096439132937965114096630611708 2381231278807137503907474311638518341247584665422209388741041446501800 736835907746380589010425127474281955);\n aB8 := evalf(-.794668266429 2661290694938113119430997053815140863772328764150866582492425892231395 7803366313333169670111262806456115566514207754203657381298140047009197 8013575609103826828824737047294213201114995354340265899100022148437584 6428816277267195500161505274251503552577340196077746346564814010325961 8832220068930169713709053453683216005683298380896080582558682383612687 5605370770961386241174185514750121559562467770681942926171203171812510 2505456949490831463940244905147330525606668587805578609454933810023032 516e-1);\n aB9 := evalf(-.391521894789596612383496799639196285338054 5808840091268064277812752553499114569444179753561374703767295358476725 4127299534995613039560845019747182656337415769987363532210405246665689 8056484578721880107139831273634452122283563821763503149139289925339559 8378774462127060000663232345239609214777805079944265910684007663091262 5256033571353048952713261456090387648676899957336512493481040127256322 6166369166627701869250517183284625011446426680106092558956198617175314 2798158442651049681323221668374109982938218);\n aC1 := evalf(.321000 6877963209212945282736072241886741425314298532400216927262619488479186 2145233118597421495604144503211542322592608163842377484213636896150913 8323262032300174154508369399398406876586301096255619597993599340873977 0012000798741442010527997500486441780759998880623210257472360097358900 7948715240036211712882279462606287489127121883154035019756496688081222 1061474587448867942354347301494417332273681591968508596795230132852153 7598462255988794922602851688170400612606266276442383518568194345914720 483213327e-1);\n aC8 := evalf(-.184637599751205014183516388175322791 0996323204749769226655464078048769505209525299751763521178003829926563 0712900941826295484194193192561560084860159566711328544062687192109817 3056589004722218006788475609754668033954660609525255147766716552866309 1006955371444679719901425825011514868682897222025577800544887348735524 1521888206336288129188808797966378728545602867896725107562857398737123 1312982639399735279798619387192604265618690682001230229337407020225518 3584286377842605437238570271650603545445667948047e-3);\n aC9 := eval f(.1560894025313219860759149162557283383430181475726228517203663063649 6262880793379098982552701969890344417664541893554194063231959686418903 4023254348635484864922437517664470890059511044294189910483029365381141 8990098086435922603008736311935392525041065439305206879607176423887619 3323816998720007560070817021926916504409685623361950682312911952371522 4330448811155619446567558679113687543872784091968142186029390121562901 8384274865493639406285454851537826280398862205756741128964048582471898 149854836925512958);\n aCA := evalf(.1934496857654560252749984220385 1887271385262876707443099700932787156065771400840229918101822979356069 2795659118323615495218608247616242166220092290507024205202394717762041 7218780533112999776957994003329902549012158469391496067804655626511416 8671498647949527636976285834587267524847922201741694891806599962050689 6687196148022364452136580040772876741149750157934485522239438544851923 9394903881580711660811258848014420955410888834999986869877126809862060 410735240727850822593729520910702178238602001466376907);\n aCB := ev alf(.26116123876366364969089284775364522882631633920100506611299584780 8935671093816413098687897683661240753616814770350082875967872303915377 2931403963706932352138999065825974370480842248785611343923001334226847 8076855650428934370626670722025141989171652522839443465345483281937420 2343849607989709072669969275045925302719775427547527185017041283228761 5381495692484575500953082306209032890148374195984086890402671014257803 0309882013266272014915359730376157162806295991614932787802101451902133 10853261658105259958);\n aD1 := evalf(.44237493285249963270353884177 9268815443317313329489228529575645756127631564847723373165022251362139 5199551724339014146626317346074332570313233050719360245189967273969473 2396741602240441380588639363498021901352727143095800795297014286698535 5630988473491087575633890947835892219998851264711343681119827177546938 5364555712603849395100515385777884625530268064447928281923786620357954 4163595788025198937952433352363854940344183547117623641892674507168581 30863478364272033888044693056215737306793777268420026189e-1);\n aD8 \+ := evalf(.464077443453903963640622216878198161653411564320811445568969 8789119941732444857047798151908923134674454347957682515697886003049301 4123004269658954045502281975365651289026042295526191605048773832187018 6750108563205532682998067676475153405503892387397712454726903251635585 7608843717280063979206240363181691839453402902938712446645491980073422 0748775955786699141318216793359239674338096414086238583028900047455206 0770724976026065335725578366042717756738119333671381487432341867530638 3333149393266793993467442e-2);\n aD9 := evalf(.470466028261513653213 0927218172390570903230981414159347904277946537920001824903276586139117 2608238992084946894204985030245397047723227142659764430629192239487673 7959258322212495460434588995542355396502115670570981097160260511891202 5215056422846994044948941299221190230282192466535350598222177816273051 7700991987897450456643545353453413490294538210263560740880308037553982 3048881237492347856681350488265044834974638813007229098355751821929595 3729629930520109725079191886177397428517964189944324843820503168e-1); \n aDA := evalf(.862074994801148816036944516741600279920531739701361 9044391270706339561700281526529702730934707995140372840665395768481987 1519909316750915044654176232950041236530353000893923549952175603477483 6708734922276047159808036948407221956391558629896073890903958167585763 0410377403894549823329655078718161321394141961557198485773069048126412 2464443706509336739929474864625837524417961198429420201758931892571918 8438772297542253643711916430239897250338184603646128330631382819838685 0125158923344068113848485808994276e-1);\n aDB := evalf(-.26079830246 8213809323325407906668762314868242631739511171929964139011865280294960 0035040055939626544107006815859238708045112894508485276690601924564567 0542835347565478667034917853858886148186145936124143413301372093107803 8445630769713423385756405306162888744300221345359231428408704390244061 0366725890638902462826605122803271573498816656193646643818839108772357 1901938498840788570671433893646065809307123410775996588090128808580391 9882469206545055186011570342550802917958822429610696905860170559619573 5588e-1);\n aDC := evalf(-.38580201743966215324932776391594995813332 3507653129897782009313981339939013776885094015894592182101289667809549 7991270274047617466290622824804880526248428176691580398210452078703585 8812347991527610418151857058360774179313986444289211231219963698304998 0893749402613634779538448206546390770599930852344145132684195382796335 7293094184104248211680003427699834359048606381857111129529478344212867 0975709329217234441461177831858101791225016580810080324439647432140077 12927239067190621583091927915281146673090089e-1);\n aE1 := evalf(.23 1804671742941156700604353961327560794075802170933256972935299077733639 0158311630529380686195935539989142081515220636741766147640400210173706 2722329035641361383699051567581145222290902156899207714968523053703428 8752975159679278432962010764123162466387801177738797136332677224793498 7974380586297176481386212157873510396075239502586977309920573875077459 2524551399038070063806977770278319449629741016570288128037211753539244 0449065698133811126691588860818921469361665411940674719134434163072681 0243801292966e-1);\n aE8 := evalf(.319785678411636706730212432258210 0058864027838197120089129330601737324659881765852592617837547330979053 5571529597922742983659492391255933368757895548959126740380966364354655 0282279918422201670810437377241957193905305759241027828019012378579522 1164731528479555643596570789164770208760753988495278071561771549327323 8837743565900725948808322375814092038631514513634085597107151880823471 4373272491231913538186137086228712275496547973034818699834720991279272 9053710100593671998340813460184038328693248987401896);\n aE9 := eval f(.5933233331841898686063939886797828376866051205773280426848164018120 8696742044437979475552415078084269185448823149806942080617505111266516 6047192650445342741821587826001106669731465937591572704070918658133395 0693924283549313556325795072460859614050984050751366870629310969770171 5173792006710557634030136852683561956893173456115472705029046984171620 6577156086097644222675210137312760126513401535747780390864719443380299 9442467293329603928722456808658312166092668857170427109605711090179594 338667452540588727);\n aEA := evalf(-1.93751954887847931470681578240 8229952008442222624773168771865465659822020582450444783197475921462558 1097294369056373927812981731052078648632229827215241261758055209963504 9252269606599240543449309343456339138337616646978246522379112038041811 4844959926834330927525884864082133179047490823167426791116233785598623 8685086303117340662463239623359612479352314261193299348417616970970033 2510975920279633430588389145157926094230014502118906155035486741328003 6288485166160632965065483342729868454914281090688744822);\n aEB := e valf(.1803950557030502357344063195737827904476240180662764468232042537 8588922035181340723593832829525874574472264550324475124321861311485826 4135935969136071256197169619094937566032125416001491694741591622347717 1584169495719198181827848265176170454535576592593096810320949453929913 0479550152160954759183243932952940676611831476746128601618250034644440 8143110201785196534884696522439678244964795185112148001672558288549646 6268931367555644045966369056624773486324006783234831520069028362612833 094442392231522709372);\n aEC := evalf(-.455401429885722072686350525 6926549022316460712353658688873150702827663762861750674926204597544989 5203501100946450974134003411463030468947426237614072998279800001510992 8309070495489870521724418732642116165090409597115474774924395479078132 5951795988977099553531561478008934776864785753409827063018462488519479 4946933206700658132003485631665939647015401996366030759380548912438913 4956528943445082128271025860305609653388733187334101009244833117527689 1261504532293191426446722681340510127831022135739742171969);\n aED : = evalf(2.158764106255762807077594619172645539322916635447781333204724 4681816340377260212807423171279780964049506898068886098524289787548218 8810653396790843936674298982998573835542516984140835355376656988993452 7907605550382159379353895662158861435336776620430531112162593981298571 0276307329366363641680966350239108084288219035320294022227153458290349 5901186096676413983131909559942114181160586690362017755052178640867067 8223950044157278635138108831288652202962875857825910949954878399833585 064970065508363574078643);\n aF1 := evalf(.2624364325798105891527733 9858585523917235530307191440658445448804981885538392639444466866643221 4515946256325969216463689222606661377414028957188629721420468105407659 6094522889704220609349709363068750082762309373148433293226433437531785 2499122070620395737426984727550423595234414848804242806410233362071086 5853445185327931779664032517040622446738389461257247509493252306560193 2516501204021405398449224338763030257382979381044947603820952400917998 809989635858329727281083715569193381168029332908857437475009e-1);\n \+ aF8 := evalf(.48631394238672661065268439136092259962530737273819615444 1526323943157158604362233276037302325481265579320894440032658483878455 0268403618407269744217012655904484130234311475311903514122449187343878 2849616101212127690160949811322105962360344721060076064753467933883406 8880077684682927811411666030294710947775716223418942500148331504683743 6187724016654558491364031518672442283186787580838664852503880357486512 5257601132188844812121488156232233639095555197082231184847867855187356 80595161660521413344094696096e-1);\n aF9 := evalf(.42743825383464788 6763694242942172436759186658577414418021512266098082212398815113221286 9566306907879696801453983890599318531373916048917930617842905912721360 0730838696627823939850441933542530357217022688623434156301277742760315 4610772774293867988881680473522362523951861363277809715137023733551268 8497962866162097339983432425743004294212502132739162237383508123999374 4924454392549533352730561882411581256534682578698804324339743223536760 25012519537086753024498887719603046891326651245183923499537655064305e- 1);\n aFA := evalf(-.48622598694655477712989769818686432773965868031 3081315959960010211560949982798671166302695988564193605367412528405988 4597520764947095741307728603148394745300507854769861316882973442678760 0141711248691734835373325192349548899641851323683065696046794864410034 3041506582063273797009343995163341773893117145669581706268971674242329 3254769951605183488610352471647962416234606101937519870246530489172862 0517914445581011931284627002355792473620519723307847991732258480956067 27128546019311594515615566530713748136);\n aFB := evalf(.13260471949 1765233178152712574368425449096871825956395829316789399811089969145156 8371853053366246773006367103975416880311595716580940315372749807585742 0848865743768358755232655216534428760437909677772585454078638302042786 6672087461511320382800101046573904844476394312034515167970802364284855 3789303007518410578819299643779637825230151850054823736451467183026170 4207467351968644849724340600191175192185981194786812721629538877936781 8726620616398360996875273633193802372845709728414243000953399021878354 9009);\n aFC := evalf(-.94029621529465156516348316581429348523837916 4167138774103460637137808220961693868522489832194868112835592739164352 6818275158196338106304839891276791729183252664396298626834218397532520 0452250609250724424752052700469705825844605118803808019589724235731620 5843498864023167698622352326891385612777499794782664025779008665394561 6798921496986851363878186182117859673957744454362785949535224493682542 4453219694885379437912419810151795891268720844641265955151825217737564 53508735675781591178104677926998263552901e-1);\n aFD := evalf(.69938 6467994102253419030451227713117665919639613827583213625813563196319229 9339871223219852389164963465051954647204178075103750195287789538577450 8329184740180619980533152133334371951302375944758870215177951721501438 5235646943534662426471547350567615219070003824950535127672623681078769 4335053825806428508511568947328217087268284416622818776119565901694839 4758712883942618507232290169951314161134571249297498593083698266622077 2935374790335509209795766217497251327901888908187213762042065348200622 4922442772);\n aFE := evalf(-.11970200130288609764927849343122430366 7065845119539794872610451106204252159212591259927679088603343598406305 4098749090838139581145253028289984056837716016748379174879527611423394 9918711369042380547901373227703662011851368582380639941078191083480235 6147244626203318841999512436968066506367891684837870007931439893668970 5458292683624554558986260601018728053448146806278741780622126816077955 3189985409420340830262006070781526430759504131875089867881535778426697 30278443780529179601515697593361258101844151031e-1);\n aG1 := evalf( .556806664153621646109082306891780343606636580436190353212534947455147 6120813558125829559879937068173120779652479028612939225623866128719905 2598382917613705163132452237108024015973610127513746549047800030200526 0106319421159807959923947577495233486067979448865601467895545825063717 7046431792833042925552199531055075138100291763146991713070477344211765 6001765649987293223404555476164617738041136746112831948559830297850242 1894861770801510004545229528818678434187411318844488424451281950843277 4574709448086047e-1);\n aG8 := evalf(-.43248533195083584328960366544 2168513673653081011892411394074487007803670550561066808766373602362775 0801532436651914745547116350752180649046254324784878469107505913317886 3176767797335905621758150618672879537213955741382693666571163554545329 1040081130099924974769658579003249065420830959315530897883188410977104 4146310214662459878072535798294702576609313787036221115710825243067391 9448890369135497667511406496924045054913101997572916641895004302774761 21135055781611726525129132422455130238413870036679809236);\n aG9 := \+ evalf(-.99797269941720387146569078829318445522380932858117911554991309 2768598742243219117021623385568158236064339123644956461824308010554471 8460921364243226082573178381286399622646317322935397899861533424596125 8263928831220718507588214325562989772399203289001029888210166606742305 2572915490887535907358688621102890229289281040081260287794333858204484 5225158145604409646911702461523278623227004444016570142497644751605858 9252985428063833293576000724056967645724372043090544260075371923438229 36043563566796542952167);\n aGA := evalf(2.7078937557189261157787252 7039673999407033797251700674710000560775179200695960486832306440107874 6903734700683251569099598966579751906990810793740516493505230507340372 9235520370758162422608096187271239592770233006697508927612930752791812 3898779249089070177610491617324801031123876600443155850115834095302044 7111774508713329555799255833443772555830236944534270853932586787229762 3239435685432418511576150426979559582903697373939081774685725521055672 05987104955526000569297786028625625534476803820500061354060);\n aGB \+ := evalf(-1.0248230235121329293135671565769699548552322727490383476718 1819593558509529512783914980787974874653020737914581708483678733907332 6358985861448944791796188513832818636989531711256231928384731690411157 8592480428488596788231496410383521832773109752441986813906806629082970 6389563288240753515516012195832730675785322814662840039695537422224274 1284678417765279922130915043503746015600778601111906698618560532010073 3505805764847676386980958807597426925088033191193443235851131970596951 36141743209648277996179689);\n aGC := evalf(1.3345652066422469592522 3960231358926518898156055269458005980840620055939779905565216079292840 8114623704444327339401768704051229201688670646380373093845199077299171 9435305343019312627990383809706885121512741820327447254957039056813749 1861019912890416099842945287249384921330515698078304884531472609166981 7664119325421668207286893250174637952556351074776245098086615270856216 0212481628468321439756744511486775116697207882059369333365857893364487 38817216782537592468307234432341407468070959686416205151401706);\n a GD := evalf(-2.5877489988306909396582289131509229791843680658662134694 7779608920025281236270191718656108519177672468778525097593874442796642 5501105660756777137169797762205951208480721441579658350004399778937693 0179264636756157763908947805588767793095194914962224600789869367488342 9317853560025317058349412564344589729783984585995347850772579046273293 6659311480989880509432202398734492003686430909677645791094242998181196 8861185301712548974094973886530233020061465180487222900932524725308743 42892371584705379780600873238);\n aGE := evalf(.89927736963483558464 3043830611118122341463259828585430092442325135273320518708773267767865 8583968989691346607371178742658146844389886132909851274089558918734251 7669174219757845524815942952881985872850539348316833153102554187858190 4558664106770502412208608841699997896776445770516160738106050532812740 7421581005130408615705986147478348156125498985853575361117457633204793 6128952503099103075969372837423050439670063637584339998010942468247347 31286020460835273057998867531167657818222203556936169177784618509e-1); \n aGF := evalf(1.49757844621116733377798853402306633304243496747535 7134513165331964695787890042760188666873241503875624490165456501399237 0532985049368378343270071036046225682020554444443702483197282294859845 3099238365834890346444895291435235216939140410913463486095272052244031 9770229132957172927115049102359844059103560686775999066442062882592190 3309466300673483171332559073527788803025034321081925768680901405941932 1225656957692661725412278902488644893248534403328215521093155066325614 4471709831964793227998240144226577);\n aH1 := evalf(-.84348911996863 7763912518839198567131838385864141351714310416218808846862744751517298 2433165062309354229170593905271160463536252965171522965169694367293814 0186047624962044212579901592172824181431574066811552122599808070864246 0503078348766526689578265048694802813674593121957189507659929721913199 0767854793221670308674249213493063717812372101626712985338100030770795 8984039120269664582986400071788861001470479689130586419695693867259463 4306744457867589950933956070438746729030854395889444803701092447185811 1e-3);\n aH8 := evalf(.760214421885608189375410688611159643501550042 7480120290148318740899211421773423234727874251342929906770121184963521 2723492746456577880043674900471951742862002185707812181797251052181291 9090302725924590713151820429777634260456893846115941436543903012540039 8957206584687873317130586518557475456333653370848429157383527874295414 9995854710229450095078967870349024434672641571642516606159206073781398 0016653364167828979063593314746250659598460645274832331039490385692391 7652736447485952366196293611810754032903);\n aH9 := evalf(1.76908392 7820959377467464871522349066447068428702073590698445112684989184432409 4920246008694092693648390226055430763742830930670096818433358416963308 9575548091287798553197024235649542742890764081181500749781571470792911 7852298956038931683165078963191573807210847007851719908866202719524487 0363287249370668796567890174439503481042694516567465216961346178708714 3838077195559276111686386313625338475791531302794592166982869888235626 3586152060280513556962017835039593452478549685415974228384827100363865 643322);\n aHA := evalf(-4.49923979762229710145291542426101659399569 5456495268863455643396071539024609271033574233193302745784885604177635 7702191624005724754808518956934999669142745892235093542404141059571696 9853594124871690030642143359088583209684086388733260902377225468729232 5680981725432432289657860094109502801437500752750698601724849658549333 9074098582433981738406268907934639353018828577464905921953909998006927 7412218242223554791322455045940652984263732793691433285233942337678673 8288921947569735491044501792123719014541124);\n aHB := evalf(1.49055 8190212043468817221563278239942209691100326719140478588601720867838040 2114504484114620433242271367106659800038603067812317986682841316441434 8846323464142969727730287072401727261488824474716435928982716734832117 8793778604457329321724084895317303843831727204597066309225566336496631 6680615336050488314902719546738083261612880924223082831787643720174552 8200408542983048841908943822078199725304403848482551273577835098154972 0975053385681957538533911426138731860452828431291148104514717824302979 447813120);\n aHC := evalf(-2.55220348013213251699756321730968929280 4518121743365818482497611667126218719069737195227002701623572904148360 3272123033045819021332422630582147344843085355765874724086496912521402 5343920982080490195371487429734278694852888295200952370689758595950247 5519315088616359022794308933990793661647853239440962240160621577429724 4713229753056658994649783343095323859823631346084112120077731753495179 4607657309558142680166325635254684014188256044318814304003823479576491 4537354327113971030048609767760667673921155167);\n aHD := evalf(4.79 5167551528575994217413424533259845001657006088189480440731104737960266 6162929933214449290255615372643917841532774491020081118551363455999843 8732171405851621796547951013967685459993344002557215487023909521277956 2479267978776459927081226026494612136918378749913465611796058875206385 9048213910450990732942247647797127401557633411751819012011293500788899 6505083974438341341748599826714449063708536733992952614488096696305456 5214055861474349302920103286636920079451864426258893915270097301975403 958404561296);\n aHE := evalf(-.916185440176948223667141409238791747 0686251714192236693920061138984202381209109248553173897408196436989378 0056234068759099961846248648678793582456037615912256457106106805456264 6330970588277156175559380122229341219173591562255127338237480422167517 2908104079204556947768225090636352791869788006941650249105460331531921 1791903743663906239540073859137479214758807872089545544472799793214290 0485546863720223788104973805484354930380322654897304564381006833624187 4331740010535911884105899703979215643744473812966e-1);\n aHF := eval f(-1.52573567874685081821765347035213565182116455616907050581613523078 4807058389577753183593735930930975464828282921228767434433947489973367 3148592694131194015070999030003369143141650448025743046671436649223135 2137488446134769986345661852106097255121566648603700240326939688293735 6886411273089427628843527294690252128979316602007201135007686552793618 8621053519459220633360425911273290263776673536716347191450885588956108 7379421627305126302413940756146188318920720821459046462806274321065020 3910550672562102267);\n aHG := evalf(.737144560156489213346749710720 5798584829803038168267854389817508169123996459113657503878639783073451 9053397419146304761867837399363941752952872447067393957176765444082705 7364848246903658588089081972695122939249178548053038692208398024831840 5975081802439037488770608864273212803744319684756293734826261948840669 5753445237176912523634823362241713828856859563904718210948193105837978 6078838560608541604448954839004746436434789903324275204310444314611662 8810612437521432075343494701535671995113908158957623988);\n aI1 := e valf(.1017366974111576638766809656369828971944080018220332809259398740 6747388070233710826996954728483849844146759078379586593324554854438264 6672414530639225762543677191437613860119598482118534928940923416949553 6847124258028045204412612326225774969694487477385200397800988766654048 7345954486388902092436816065217617773061225842115753537208968367253608 3181451719174945594418049158441250461170456253187598860644779868324567 1039520196555730238526005061814817612716972600501508814298279178843422 669902098758021018445);\n aI8 := evalf(-1.69621755320943281071166683 8709742166182992092906177246174096517233561845662947862824250702239348 0800639883194026104760147586250221300847956884733019005944891047278346 6126498460611938204864213577638599571549636016553482179353533611069149 9817984339879796052581997627698061321417758522616588948859159435153786 4243136339170626779431135137248518735963549424045801757430355751926648 7358089898420435385536436685204422324991645039369645743831554223846039 0881754235540955394484700413493442248461921245383520822308);\n aI9 : = evalf(-3.82523584621162425452874085751225569355126471913287574026123 1165548583482101116676417962094536627398599846211437442938200941188523 1471391973421106351761705209900639065804573367864366406965286102198377 1951771234894025706738472544964797293237044559861843207191229891156303 1811798845923224342905999252252119138388879705049344090941620963841064 5772565703362650792126110004875512285452546460694070848626451171800953 3681273688408347418378736778556347848778266950950411569185490969509849 0814263693142901771805864);\n aIA := evalf(9.75476897988586664885643 1516333641627109105703674164986615824197909762854575668793815906052196 9318166850093888209258842908680091918900429800578898569645706906325623 9272052389818683822433268166187583421252083279934512320955640660402691 6845957734847881569442318015518829836672863336010656640624580631986713 4234902099638706241257691684393957927179055171727922628399201152962836 5604241857346490244703369083153471076033720550094945216407450135265323 614692964332687887828099047680595267336063863901100332419384);\n aIB := evalf(-2.520767789227152291196336314591227486393143379933686189126 2407100418367424141256949405241401128976410803095960574280339651024409 6347791879002134626589938021819881524664875352153843520905832279722994 0909907466973726219344812141918379901610487357103723522098480219961530 5234788544199341724243774100192310954765889310594669464293788647706991 3198290761121435185245694035155345859962760517230555154179738598479028 2975993412023332552177605386785245924943716060361503221374803742323117 973804530727714050056257633);\n aIC := evalf(5.472417145227780046950 9920005657347934133955365316524195850043007903709841859454959777562123 4506831566350732162424711264308047773693335354823269193576880125182393 0708607599713060541007856383615286675879256181854203404177348150112327 3821124233737166867481785373837689552298562698339685983863114757428961 9917045243897791843342734919990918020063297643511293324575485547988112 4122649436959558856122381923100291659177519620825143761124803230141853 194056634545307571994047870862976491355760885982251065098804405);\n \+ aID := evalf(-9.781098113458736121002383874108051372067873053264954833 3761142589407364443888416879291682747170400130335664304315268839390666 5989184846885130648352575838947833597180794775452938998391834886485760 2396471857809988700994957392987451507772376804264288959669024637072066 6000029798648387275432278336280164862705994112244851326369029099418853 4170192027805801779985855639359003993728309689471574168355043565357926 3679461136232222524310005448555680356144793072185887662394646740074425 47897576064894875452782519008);\n aIE := evalf(.31891526924553343690 2456021348675301954046478564116324204778211183939947114717668156072795 2129804787076874234935143391563861473379485203444764411030583151405111 9481004316815273529874171818978615686152317512567408770932521034260140 9608238472831742743144699596145575090005481090669912018114559361094040 2614798956549380208430456848697273904392294767318828377088199450605579 4470747971632853670289588130709835991203190359559385017574334141689481 41943228311556322555947120235142058052229559391213450294793407647);\n \+ aIF := evalf(3.44722703652775671815647501032432215527703592405139288 0570525223655410460762027138914944091250202130888572364696598938601612 5607253102968859634407938888795619382051461015261441567919070559191707 3357701251324228871865392595026563108939065540185585174997139381429069 6529940662720154521083181117931580600286784673448925249007741035854130 7333015956190256694724154349667980773222364680536216085159892503811287 6929202199689678457380378770579528840407138211435631034368082260331377 0927726484737902928585937995578);\n aIG := evalf(-.60519836122192778 3224170767129560712781482049971529361376140273265278012081004165359056 3156748794209171894120707465740597133761333454142943333892158117953969 2708877402119638591939814995648926780275250607461867678854947454445165 2513881183451883383260245849262663684308081571882630386539839628294454 5818200374528116946140766318827380847958297315439604519428093455594733 4408756456876328716560561246716693349020339977744295836553604172789125 43650195444249255490221073195587050434461403047677343483328497966962); \n aIH := evalf(.333452535030778745920263137841480656028763650565863 4784117511174230383993073398823363128289907713133086558799806727655543 8954699748416549754680861564000091497358307477274873050242130061074449 3654948026054037019540862223342235598074299173179169106632492862568636 5934180230860010395368762120599174843023460035766771608627372356818149 2201917337352166367300937195196557913839417682201206664122150127205317 7840863080645317882162720473058720769538150769606623268922596413072534 3135401600282043894596363814361475);\n\n ## weights\n SQRT7 := eva lf[Digits+3](sqrt(7));\n b1 := evalf(1/30);\n bC := evalf((14+SQRT 7)/120);\n bD := evalf((14-SQRT7)/60);\n bE := evalf((14-SQRT7)/12 0);\n bF := evalf((14+SQRT7)/60);\n bG := bC;\n bH := bE;\n bI := b1;\n # linking coefficients\n \n xstart := evalf(x0);\n x end:= evalf(xn);\n \n sgn := sign(xend-xstart);\n h := sgn*hstrt ;\n\n eps := evalf(t);\n safety := 0.9;\n pgrow := -0.1;\n psh rink := -0.11111111111111111111;\n errcontrol := 0.3570467227e-7; #( 5/safety)^(1/pgrow)\n tiny := Float(1,-3*saveDigits);\n \n xk := \+ evalf(x0);\n yk := evalf(y0);\n \n if ymaxtemp<>0 then\n ym ax := abs(evalf(ymaxtemp))\n else\n ymax := max(abs(yk),tiny)\n end if;\n \n soln := NULL;\n fk := fn(xk,yk);\n\n for k fro m 1 to maxstps do\n if errcntl=0 then yscale := max(abs(yk),abs(f k*h),tiny)\n elif errcntl=1 then yscale := max(abs(yk),tiny)\n \+ elif errcntl=2 then yscale := abs(ymax)\n else yscale := max(a bs(fk*h),tiny) end if;\n \n if abs(h)>=hmx then\n h \+ := sgn*hmx;\n maxstepsize := true;\n else\n maxst epsize := false;\n end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true;\n else\n mins tepsize := false;\n end if;\n if (xk+2*h-xend)*(xk+2*h-xstar t)>0 then \n h := (xend-xk)/2;\n laststep := true;\n \+ else\n laststep := false;\n end if;\n\n # Do ste p.\n do\n yy := yk;\n xx := xk;\n # Use s tep-doubling to obtain an error estimate\n for ct from 1 to 3 \+ do\n if ct=1 then hh := 2*h else hh := h end if; \n \+ if ct=3 then\n xx := xx + hh;\n yy := \+ yv[2];\n f1 := fn(xx,yy);\n else\n \+ f1 := fk;\n end if;\n\n t := a21*f1;\n \+ f2 := fn(xx + c2*hh,yy + t*hh);\n t := a31*f1 + a32*f 2;\n f3 := fn(xx + c3*hh,yy + t*hh);\n t := a41* f1 + a43*f3;\n f4 := fn(xx + c4*hh,yy + t*hh);\n \+ t := a51*f1 + a53*f3 + a54*f4;\n f5 := fn(xx + c5*hh,yy + \+ t*hh);\n t := a61*f1 + a64*f4 + a65*f5;\n f6 := \+ fn(xx + c6*hh,yy + t*hh);\n t := a71*f1 + a74*f4 + a75*f5 + a76*f6;\n f7 := fn(xx + c7*hh,yy + t*hh);\n t : = a81*f1 + a86*f6 + a87*f7;\n f8 := fn(xx + c8*hh,yy + t*hh );\n t := a91*f1 + a96*f6 + a97*f7 + a98*f8;\n f 9 := fn(xx + c9*hh,yy + t*hh);\n t := aA1*f1 + aA6*f6 + aA7 *f7 + aA8*f8 + aA9*f9;\n fA := fn(xx + cA*hh,yy + t*hh);\n \+ t := aB1*f1 + aB6*f6 + aB7*f7 + aB8*f8 + aB9*f9;\n \+ fB := fn(xx + cB*hh,yy + t*hh);\n t := aC1*f1 + aC8*f8 + aC9*f9 + aCA*fA + aCB*fB;\n fC := fn(xx + cC*hh,yy + t*hh) ;\n t := aD1*f1 + aD8*f8 + aD9*f9 + aDA*fA + aDB*fB + aDC*f C;\n fD := fn(xx + cD*hh,yy + t*hh);\n t := aE1* f1 + aE8*f8 + aE9*f9 + aEA*fA + aEB*fB + aEC*fC + aED*fD;\n \+ fE := fn(xx + cE*hh,yy + t*hh);\n t := aF1*f1 + aF8*f8 + a F9*f9 + aFA*fA + aFB*fB + aFC*fC + aFD*fD + aFE*fE;\n fF := fn(xx + cF*hh,yy + t*hh);\n t := aG1*f1 + aG8*f8 + aG9*f9 \+ + aGA*fA + aGB*fB + aGC*fC + aGD*fD + aGE*fE\n \+ + aGF*fF;\n \+ fG := fn(xx + cG*hh,yy + t*hh); \n t := aH1*f1 + aH8*f8 + aH9*f9 + aHA*fA + aHB*fB + aHC*fC + aHD*fD + aHE*fE\n \+ + aHF*fF + a HG*fG;\n fH := fn(xx + cH*hh,yy + t*hh); \n t : = aI1*f1 + aI8*f8 + aI9*f9 + aIA*fA + aIB*fB + aIC*fC + aID*fD + aIE*f E\n + aIF*fF + aI G*fG + aIH*fH;\n fI := fn(xx + hh,yy + t*hh); \n \+ t := b1*f1 + bC*fC + bD*fD + bE*fE + bF*fF + bG*fG + bH*fH + bI*fI; \n yv[ct] := yy + t*hh;\n end do;\n\n # err or estimate\n yerr := (yv[3]-yv[1]); # conservative estimate \+ \n yout := yv[3]; \n err := abs(yerr/yscale )/eps;\n if err<=1.0 or minstepsize then break end if;\n \+ \n # Shrink, but not too much.\n if prntflg then\n \+ print(`reducing step-size and repeating step`);\n e nd if;\n htemp := safety*h*err^pshrink;\n if h>=0 then \n h := max(htemp,0.1*h)\n else\n h := m in(htemp,0.1*h)\n end if;\n if maxstepsize then maxste psize := false end if;\n if abs(h)<=hmn then\n h := sgn*hmn;\n minstepsize := true;\n end if;\n e nd do;\n\n if k>1 then \n soln := soln,[xmid,ymid];\n \+ end if;\n soln := soln,[xk,yk];\n xmid := xx;\n ymid \+ := yv[2];\n \n if err>errcontrol then\n hnext := safe ty*h*err^pgrow;\n inc := false;\n else\n hnext := 5*h;\n inc := true;\n end if;\n \n if laststep then \n xk := xend; \n else\n xk := xk + 2*h;\n e nd if;\n yk := yout;\n fk := fn(xk,yk);\n if prntflg th en\n print(`abs err estimate -> `,evalf(abs(yerr),5),`abs err \+ bound -> `,evalf(abs(yscale)*eps,5));\n print('step',2*k-1,` \+ `,h,` `,[xmid,ymid]);\n print('step',2*k,` `,h,` `,[xk, yk]);\n if laststep then\n print(`last step`);\n \+ elif inc then\n print(`increasing step-size by a fact or of 5`)\n elif maxstepsize then\n print(`used max imum step-size`)\n elif not minstepsize then\n prin t(`using error to adjust step-size`)\n else \n prin t(`used minimum step-size`)\n end if;\n print(``);\n \+ end if;\n \n if laststep then\n break;\n en d if;\n\n if abs(yk)>ymax then ymax := abs(yk) end if;\n h : = hnext;\n end do;\n\n if not laststep and k>=maxstps then\n \+ error \"reached maximum number of steps before reaching end of interva l\"\n end if;\n\n soln := soln,[xmid,ymid],[xk,yk];\n if outpt=' rkstep' then\n eqns := \{SOLN_=[soln],FXY_=fxy,X_=x,Y_=y,c2_=c2,c 3_=c3,\n c4_=c4,c5_=c5,c6_=c6,c7_=c7,c8_=c8,c9_=c9,cA_=cA,cB_=cB, cC_=cC,\n cD_=cD,cE_=cE,cF_=cF,cG_=cG,cH_=cH,a31_=a31,a32_=a32,a4 1_=a41,\n a43_=a43,a51_=a51,a53_=a53,a54_=a54,a61_=a61,a64_=a64,a 65_=a65,a71_=a71,\n a74_=a74,a75_=a75,a76_=a76,a81_=a81,a86_=a86, a87_=a87,a91_=a91,a96_=a96,\n a97_=a97,a98_=a98,aA1_=aA1,aA6_=aA6 ,aA7_=aA7,aA8_=aA8,aA9_=aA9,aB1_=aB1,\n aB6_=aB6,aB7_=aB7,aB8_=aB 8,aB9_=aB9,aC1_=aC1,aC8_=aC8,aC9_=aC9,aCA_=aCA,\n aCB_=aCB,aD1_=a D1,aD8_=aD8,aD9_=aD9,aDA_=aDA,aDB_=aDB,aDC_=aDC,aE1_=aE1,\n aE8_= aE8,aE9_=aE9,aEA_=aEA,aEB_=aEB,aEC_=aEC,aED_=aED,aF1_=aF1,aF8_=aF8,\n \+ aF9_=aF9,aFA_=aFA,aFB_=aFB,aFC_=aFC,aFD_=aFD,aFE_=aFE,aG1_=aG1,aG 8_=aG8,\n aG9_=aG9,aGA_=aGA,aGB_=aGB,aGC_=aGC,aGD_=aGD,aGE_=aGE,a GF_=aGF,aH1_=aH1,\n aH8_=aH8,aH9_=aH9,aHA_=aHA,aHB_=aHB,aHC_=aHC, aHD_=aHD,aHE_=aHE,aHF_=aHF,\n aHG_=aHG,aI1_=aI1,aI8_=aI8,aI9_=aI9 ,aIA_=aIA,aIB_=aIB,aIC_=aIC,aID_=aID,\n aIE_=aIE,aIF_=aIF,aIG_=aI G,aIH_=aIH,b1_=b1,bC_=bC,bD_=bD,bE_=bE,bF_=bF,\n bG_=bG,bH_=bH,bI _=bI\};\n return subs(eqns,eval(rk910step));\n else\n retu rn evalf[saveDigits]([soln]);\n end if;\nend proc: # of rungk910" }} }{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 39 "Examples are given in the next section." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT 0 27 "desolveRK(..,adaptive=true)" }{TEXT -1 10 ": examples" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 1" }{TEXT 291 61 " .. The accuracy of an adaptive order 4-5 Runge-Kutta method " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this exampl e we construct a continuous numerical solution to the differential equ ation" }}{PARA 257 "" 0 "" {TEXT -1 1 " " }{XPPEDIT 18 0 "dy/dx = 5*co s*4*x/(1+y);" "6#/*&%#dyG\"\"\"%#dxG!\"\"*,\"\"&F&%$cosGF&\"\"%F&%\"xG F&,&F&F&%\"yGF&F(" }{TEXT -1 2 ", " }}{PARA 0 "" 0 "" {TEXT -1 33 "sub ject to the initial condition " }{XPPEDIT 18 0 "y(0) = 1;" "6#/-%\"yG6 #\"\"!\"\"\"" }{TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 132 "Maple can find an analytical solution al though it has an awkward form which requires that an equation be solve d for each evaluation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 147 "de := diff(y(x),x)=5*cos(4*x)/(1+y (x));\nic := y(0)=1;\ndsolve(\{de,ic\},y(x));\ng := unapply(rhs(%),x): \nplot(g(x),x=0..2.5,0..1.6,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$*(\"\"&\"\"\"-%$cosG6 #,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\" yG6#%\"xG,&\"\"\"!\"\"*&#F)\"\"#F)*$,&\"#;F)*&\"#5F)-%$sinG6#,$*&\"\"% F)F'F)F)F)F)F,F)F)" }}{PARA 13 "" 1 "" {GLPLOT2D 500 239 239 {PLOTDATA 2 "6%-%'CURVESG6$7ap7$$\"\"!F)$\"\"\"F)7$$\"3ALL$3FWYs#!#>$ \"336Mv`O'o1\"!#<7$$\"3WmmmT&)G\\aF/$\"3()4_(Q+u38\"F27$$\"3O**\\7`p)* >yF/$\"3aL5o&puQ=\"F27$$\"3PL$ek`o!>5!#=$\"3!>\\5.msSB\"F27$$\"3omm\"z >)G_:F@$\"3Zvcz7jZN8F27$$\"3-nmT&QU!*3#F@$\"3_T3TY6c>9F27$$\"3HL$eRZXK i#F@$\"3;U^5RB[$[\"F27$$\"3xm;z>,_=JF@$\"37Qk)3=nR_\"F27$$\"3aL$eRAM\\ P$F@$\"3+.6\\+kdP:F27$$\"3v**\\7G$[8j$F@$\"39ymrhJ3Y:F27$$\"3+n;zW-%Rw $F@$\"3;?q^WrY[:F27$$\"3qL$e9;Kl*QF@$\"3#eJM%oLZ\\:F27$$\"3S+]7yS7HSF@ $\"3SkwUN15\\:F27$$\"35n;z%*frhTF@$\"3)R.%>*Q\\ta\"F27$$\"3QL$3-Q\\gU% F@$\"3Fhs$eda(R:F27$$\"3A+]ilFQ!p%F@$\"3vZ$*45qsE:F27$$\"3]n\"HK9#Gi\\ F@$\"3:Jj:_Ts2:F27$$\"3@ML$3_\"=M_F@$\"3%)=7uNj8$[\"F27$$\"3HnmTg(fJr& F@$\"3v**H*e!\\kE9F27$$\"3k++]7eP_iF@$\"3Dcc9ps)RM\"F27$$\"3Q++]Pf!Qz' F@$\"3'*HDaPFZU7F27$$\"3@++](=ubJ(F@$\"3r3xWQ!z$H6F27$$\"3AMe9m>[_vF@$ \"3]*\\!=L'HQ2\"F27$$\"37n;zW(*Q*y(F@$\"3FOX&>_\"3;5F27$$\"3[+D\"y+'4r !)F@$\"3C6*=t.V.X*F@7$$\"3#QLL3F-GN)F@$\"3WDGY1LE?()F@7$$\"3aML3FWW\"f )F@$\"3'y)zq9%[>4)F@7$$\"3=MLL$e'3I))F@$\"3Q#z+%[W(*fuF@7$$\"3km\"HK9% o2\"*F@$\"3*Ri77!fyFnF@7$$\"3?+]7.6 2s>6F2$\"35T1[73P@DF@7$$\"3cL$ek`1l9\"F2$\"3F\\Z()GfbGBF@7$$\"3S3x16a! )e6F2$\"3%4DA#>SyxAF@7$$\"3Y$3xcG/6<\"F2$\"3ScqF#fS9D#F@7$$\"3+r<)Hs`s <\"F2$\"3;w!o)4o]ZAF@7$$\"3_ekGgJS$=\"F2$\"3/UjCtqu\\AF@7$$\"3%e9\"f(f _&*=\"F2$\"3U(o:Ikc\"eAF@7$$\"3OLe*[.-d>\"F2$\"3cVt$pvgk#F@7$$\"3zm\"z% *f%)QI\"F2$\"35pWRO%*)HX$F@7$$\"3/+voza'=N\"F2$\"3:$3*o3X9AWF@7$$\"3M$ eRA\"exx8F2$\"3p)yCt#)\\(>]F@7$$\"3(om\"zWho.9F2$\"35j-*)o!oVl&F@7$$\" 3WLek`SXI9F2$\"3[4ga)3!\\PjF@7$$\"3-++]i>Ad9F2$\"3puf,WR'z.(F@7$$\"3;+ D1R\"4M[\"F2$\"3pB[oft!3t(F@7$$\"32+]i:jf4:F2$\"3j-&R#)\\nIU)F@7$$\"36 ](oavL\\`\"F2$\"3;g%4-\\/c3*F@7$$\"39+DJ&>r-c\"F2$\"3.il.8k>N(*F@7$$\" 31]PM-TS)e\"F2$\"36[!3$z(4N/\"F27$$\"3++]P4q`;;F2$\"3lOD-=Pl56F27$$\"3 emTgxc\"=k\"F2$\"3W\\oEN^5o6F27$$\"3;LL$eM%4n;F2$\"3!y;&\\UKYA7F27$$\" 37++v$4v5s\"F2$\"3Au#*R$>!yE8F27$$\"3cm\"zWn*)*p+p:plx09F27$$ \"3H++DJiYB=F2$\"3k7$f[jbMZ\"F27$$\"3CLek.Nyt=F2$\"3!)e*f)fc3=:F27$$\" 3rmTgF:3+>F2$\"3@n4)4msP`\"F27$$\"3=+Dc^&zj#>F2$\"3=qEA<16W:F27$$\"3W3 F>9^BR>F2$\"31YGv$*>?Z:F27$$\"3q;H#on!4_>F2$\"3?$)\\$fi***[:F27$$\"3) \\7`%Ri%\\'>F2$\"3qf!o1],&\\:F27$$\"3CLL3-=!y(>F2$\"3Q\"oOj02([:F27$$ \"3W;zWn*=Z+#F2$\"3#>)opD1&Ga\"F27$$\"3))*\\7G8O;.#F2$\"3kOaaabMJ:F27$ $\"3S$eRAcgv0#F2$\"3A1el5x(\\^\"F27$$\"3!pmm;*\\[$3#F2$\"3CbX)zi)\\$\\ \"F27$$\"3*pmT&Qz]O@F2$\"3k&f]x<,TV\"F27$$\"3iLekG=4*=#F2$\"3Up)3$Qbqb 8F27$$\"3F++]i4TPAF2$\"3'4#\\(fPgzE\"F27$$\"3qL$3F9!z#H#F2$\"39WtK!f36 :\"F27$$\"3L+v=UgbKUBF2$\"3$e`46GoV .\"F27$$\"3]$e*)fbF(oBF2$\"3a%zAz78Vo*F@7$$\"3/+DJqJ8&R#F2$\"3kN1^?4v0 !*F@7$$\"3<++]7nS?CF2$\"31^ot0TqV$)F@7$$\"3G+voa-oXCF2$\"3!QiD/x0_n(F@ 7$$\"3O]PMF,%GZ#F2$\"3#p;s-PGq&pF@7$$\"3++++++++DF2$\"3g\"=#y(R9zC'F@- %'COLOURG6&%$RGBG$\"#5!\"\"F(F(-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$; F($\"#DFcfl;F($\"#;Fcfl" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 " " 0 "" {TEXT -1 106 "We start by constructing a discrete solution and \+ make a numerical comparison with the analytical solution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 368 "de := diff(y(x),x)=5*cos(4*x)/(1+y (x));\nic := y(0)=1;\npts := desolveRK(\{de,ic\},y(x),x=0..2,method=rk 45,output=points):\ncat(`The discrete solution has `,convert(nops(pts) ,string),` points`);\np1 := plot(pts,style=line,color=grey):\np2 := pl ot([pts$2],style=point,symbol=[diamond,cross],color=[black,red]):\nplo ts[display]([p1,p2],view=[0..2.5,0..1.6],labels=[`x`,`y(x)`]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$*(\" \"&\"\"\"-%$cosG6#,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%EThe~discrete~solution~has~111~pointsG" }}{PARA 13 "" 1 "" {GLPLOT2D 585 359 359 {PLOTDATA 2 "6'-%'CURVESG6%7[r7$$\"\"!F)$\" \"\"F)7$$\"3-+++++++5!#>$\"34+++*3R[-\"!#<7$$\"3)******fSj91$F/$\"3%** ****RQT\\2\"F27$$\"3'******R$32]^F/$\"3++++8\"**R7\"F27$$\"3Y*****f#y^ lsF/$\"3!*******>*><<\"F27$$\"3y******f\\q0%*F/$\"34+++gwx<7F27$$\"3'* *****Hfbq:\"!#=$\"3#******p?**=E\"F27$$\"39+++d6;w8FJ$\"3,+++;j%QI\"F2 7$$\"37+++;_<)f\"FJ$\"3#******>@+MM\"F27$$\"30+++i$3N#=FJ$\"3#*******) =\\.Q\"F27$$\"31+++)z+F0#FJ$\"3'******>UyWT\"F27$$\"33+++s4X'G#FJ$\"3+ +++\"fgbW\"F27$$\"3$)*****p&[nDDFJ$\"3!******4gXLZ\"F27$$\"3%******p$o hrFFJ$\"3!******p&oa(\\\"F27$$\"3$)*****Hy^\"F27$$\" 3;+++)f$z\"H$FJ$\"31+++0-sL:F27$$\"3E+++0qqtNFJ$\"33+++vxhW:F27$$\"3y* ****RLgD)QFJ$\"3)******zKK%\\:F27$$\"3#)*****R*3AfUFJ$\"3'******z6$=X: F27$$\"3E+++H\\s\\XFJ$\"33+++(QKV`\"F27$$\"3=+++\"*4>b[FJ$\"3\"******4 S\")e^\"F27$$\"3S+++)3@N8&FJ$\"33+++4F)G\\\"F27$$\"3E++++nR&R&FJ$\"3)* *****4/rfY\"F27$$\"3!*******oHEYcFJ$\"3&*******['>bV\"F27$$\"3%)*****z *o'*))eFJ$\"3&*******e6%=S\"F27$$\"3Q+++uRkIe'FJ$\"3#******4m[SG\" F27$$\"3()*****Rgyg!oFJ$\"3*)*****fcu*R7F27$$\"3`+++`r'e-(FJ$\"3#***** **=s'Q>\"F27$$\"3>+++*4!yUsFJ$\"3))*****f!p&f9\"F27$$\"3A+++wu.duFJ$\" 3#*******G>\\'4\"F27$$\"3'******R$frowFJ$\"33+++h2vX5F27$$\"3m*****fb? x(yFJ$\"3i*****fFl0%**FJ7$$\"3A+++%zZP3)FJ$\"3(******pcAzT*FJ7$$\"3%)* ****\\n_iG)FJ$\"3-+++w_7%*))FJ7$$\"3o*****\\;XW[)FJ$\"3))*****>0LWP)FJ 7$$\"3W*****fKYtn)FJ$\"3k*****f&4gkyFJ7$$\"3m*****41@R'))FJ$\"3[+++ftR qtFJ7$$\"3W+++K9EV!*FJ$\"3a+++hl&p*oFJ7$$\"37+++V@v9#*FJ$\"3S+++2O?[kF J7$$\"3A+++h4:y$*FJ$\"3c*****R#)yl-'FJ7$$\"3r*****\\$ycL&*FJ$\"3`+++=^ 6LcFJ7$$\"3=+++h(y8o*FJ$\"35+++\"4XxE&FJ7$$\"3p*****p$Q7A)*FJ$\"3%**** **4`p'H\\FJ7$$\"3%******4'=Uc**FJ$\"32+++]`nI*HmSFJ7$$\"3#******H?%pK5F 2$\"30+++z24CQFJ7$$\"3*******fxjT/\"F2$\"3'******RXUCg$FJ7$$\"3#****** \\P$Gb5F2$\"3v******HW<+MFJ7$$\"3#******Ht-h1\"F2$\"3*)*****>,Li@$FJ7$ $\"3++++R%pm2\"F2$\"3))*****f;%p\\IFJ7$$\"35+++l)Hq3\"F2$\"3-+++d\\w** GFJ7$$\"3++++c-B(4\"F2$\"3!)*****z@'ylFFJ7$$\"3!*******H\"=t5\"F2$\"35 +++JwBZEFJ7$$\"36+++=TM<6F2$\"3,+++p&[Pa#FJ7$$\"36+++^XOF6F2$\"3)***** *zG=^X#FJ7$$\"3$*******HbWP6F2$\"37+++03N\"Q#FJ7$$\"31+++\"ypw9\"F2$\" 3')*****4!zrABFJ7$$\"3/+++U)\\\"e6F2$\"3))******eo()zAFJ7$$\"31+++#4d! p6F2$\"3/+++P*=TD#FJ7$$\"3'******Rz,2=\"F2$\"35+++\"e-![AFJ7$$\"37+++U R'Q>\"F2$\"37+++$RAxE#FJ7$$\"3++++GQ117F2$\"3/+++([x5J#FJ7$$\"3\"***** *>#yc<7F2$\"35+++]xttBFJ7$$\"33+++'3%3H7F2$\"3#******HTzrX#FJ7$$\"3'** ****fNK*R7F2$\"3#******zk7Ub#FJ7$$\"35+++7pS]7F2$\"3E+++3rIkEFJ7$$\"3) ********o(pg7F2$\"31+++z8d(y#FJ7$$\"37+++$H<4F\"F2$\"3/+++co;CHFJ7$$\" 35+++_V9\"G\"F2$\"3))*****zCUV2$FJ7$$\"3++++q0W\"H\"F2$\"31+++l5WQKFJ7 $$\"3/+++m$e=I\"F2$\"3:+++zi*oT$FJ7$$\"3'*******>]W78F2$\"32+++7^A5OFJ 7$$\"3'******p9XKK\"F2$\"38+++KT->QFJ7$$\"30+++fBIM8F2$\"3>+++&GlR/%FJ 7$$\"31+++k/mX8F2$\"3'******f#=z&G%FJ7$$\"31+++rVOd8F2$\"39+++&)HJXXFJ 7$$\"33+++C2Yp8F2$\"3u*****\\D%RB[FJ7$$\"3-+++'Q)*>Q\"F2$\"3_*****\\:V 47&FJ7$$\"33+++O&G]R\"F2$\"3R+++CF))QaFJ7$$\"3&******pR/'39F2$\"3M+++] -6ydFJ7$$\"3-+++[-yA9F2$\"3%*******y-VRhFJ7$$\"3$******>R4wV\"F2$\"3#* *****4_^M_'FJ7$$\"3!******pkSJX\"F2$\"3*)*****>lN/$pFJ7$$\"3))*****>&H Tp9F2$\"3;+++:/4gtFJ7$$\"31+++#4[k[\"F2$\"3)******Hj:8\"yFJ7$$\"30+++# eUU]\"F2$\"3I+++!4Z>G)FJ7$$\"33+++I9wA:F2$\"3!)*****\\\"Qfo()FJ7$$\"33 +++^x$>a\"F2$\"3g*****pK$pm#*FJ7$$\"35+++^5oh:F2$\"3e*****z#f&3x*FJ7$$ \"3'******f$G*=e\"F2$\"35+++!Hb4*=&fI\"F27$$\"35+++b.x J=AVv\"F2$\"3)******R![=#Q\"F27$$ \"3-+++EJExA;;9F27$$\"3&******>(Rm+=F2$\"33+++*G!3Z9F27$$ \"32+++%pF2$\"3/+++oHTM:F27 $$\"3++++-QoH>F2$\"33+++`&G]a\"F27$$\"3/+++!zk2'>F2$\"31+++60[\\:F27$$ \"3#******zyu\"**>F2$\"3#******f:?Xa\"F27$$\"\"#F)$\"3)******z&oGW:F2- %'COLOURG6&%$RGBG$\")=THv!\")Fc^mFc^m-%&STYLEG6#%%LINEG-F$6&F&-F`^m6&F b^mF)F)F)-%'SYMBOLG6#%(DIAMONDG-Fg^m6#%&POINTG-F$6&F&-F`^m6&Fb^m$\"*++ ++\"Fe^mF(F(-F__m6#%&CROSSGFb_m-%+AXESLABELSG6%%\"xG%%y(x)G-%%FONTG6#% (DEFAULTG-%%VIEWG6$;F($\"#D!\"\";F($\"#;F]am" 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" }}}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continu ous solution can be constructed over the interval from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 " to " }{XPPEDIT 18 0 "x = 2;" "6# /%\"xG\"\"#" }{TEXT -1 21 " using the procedure " }{TEXT 0 9 "desolveR K" }{TEXT -1 20 " with the options ''" }{TEXT 262 11 "method=rk45" } {TEXT -1 9 "'' and ''" }{TEXT 262 15 "output=rkinterp" }{TEXT -1 3 "'' ." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 245 "de := diff(y(x),x)=5*cos(4*x)/(1+y(x));\nic := y(0)= 1;\ngn1 := desolveRK(\{de,ic\},y(x),x=0..4,method=rk45,output=rkinterp );\nplot('gn1'(x),x=0..2.5,0..1.6,labels=[`x`,`y(x)`],\n \+ color=COLOR(RGB,.9,0,.4),thickness=2,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$*(\"\"&\" \"\"-%$cosG6#,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 470 275 275 {PLOTDATA 2 "6'-%'CURVESG6#7ap7$$\"\"!F)$\"\"\"F )7$$\"+qUkCF!#6$\"+aO'o1\"!\"*7$$\"+T&)G\\aF/$\"+/S(38\"F27$$\"+]p)*>y F/$\"+'puQ=\"F27$$\"+O&o!>5!#5$\"+gE2M7F27$$\"+)>)G_:F@$\"+8jZN8F27$$ \"+&QU!*3#F@$\"+Y6c>9F27$$\"+uaCBEF@$\"+RB[$[\"F27$$\"+?,_=JF@$\"+\"=n R_\"F27$$\"+CU$\\P$F@$\"++kdP:F27$$\"+G$[8j$F@$\"+iJ3Y:F27$$\"+X-%Rw$F @$\"+XrY[:F27$$\"+i@`'*QF@$\"+oLZ\\:F27$$\"+yS7HSF@$\"+N15\\:F27$$\"+& *frhTF@$\"+*Q\\ta\"F27$$\"+!Q\\gU%F@$\"+wXvR:F27$$\"+lFQ!p%F@$\"+5qsE: F27$$\"+U@Gi\\F@$\"+_Ts2:F27$$\"+?:=M_F@$\"+Oj8$[\"F27$$\"+g(fJr&F@$\" +1\\kE9F27$$\"+7eP_iF@$\"+ps)RM\"F27$$\"+Pf!Qz'F@$\"+QFZU7F27$$\"+(=ub J(F@$\"+R!z$H6F27$$\"+l>[_vF@$\"+L'HQ2\"F27$$\"+W(*Q*y(F@$\"+A:3;5F27$ $\"+0g4r!)F@$\"+XIM]%*F@7$$\"+qA!GN)F@$\"+4LE?()F@7$$\"+DWW\"f)F@$\"+? %[>4)F@7$$\"+$e'3I))F@$\"+]W(*fuF@7$$\"+XTo2\"*F@$\"+(*eyFnF@7$$\"+.6F2$\"+: 3P@DF@7$$\"+Ol]Y6F2$\"+KfbGBF@7$$\"+6a!)e6F2$\"+?SyxAF@7$$\"+'G/6<\"F2 $\"+#fS9D#F@7$$\"+BPDx6F2$\"+5o]ZAF@7$$\"+gJS$=\"F2$\"+tqu\\AF@7$$\"+) f_&*=\"F2$\"+Wm:eAF@7$$\"+N?q&>\"F2$\"+exrsAF@7$$\"+ISBA7F2$\"+(pz]S#F @7$$\"+Egw[7F2$\"+y*>gk#F@7$$\"+*f%)QI\"F2$\"+G%*)HX$F@7$$\"+![l=N\"F2 $\"+;X9AWF@7$$\"+7exx8F2$\"+A)\\(>]F@7$$\"+Xho.9F2$\"+u!oVl&F@7$$\"+aS XI9F2$\"+)4!\\PjF@7$$\"+i>Ad9F2$\"+JR'z.(F@7$$\"+R\"4M[\"F2$\"+et!3t(F @7$$\"+;jf4:F2$\"+3v1B%)F@7$$\"+cP$\\`\"F2$\"+/Xg&3*F@7$$\"+&>r-c\"F2$ \"+0k>N(*F@7$$\"+-TS)e\"F2$\"+y(4N/\"F27$$\"+4q`;;F2$\"+!yE8F 27$$\"+u'*)*pF2$\"+hExL:F27$$\"+^&zj#>F2$\"+<16W:F27$$\"+9^BR>F2$\" +%*>?Z:F27$$\"+w14_>F2$\"+E'***[:F27$$\"+Ri%\\'>F2$\"+,:]\\:F27$$\"+-= !y(>F2$\"+cqq[:F27$$\"+o*=Z+#F2$\"+E1&Ga\"F27$$\"+LhjJ?F2$\"+abMJ:F27$ $\"+i0cd?F2$\"+6x(\\^\"F27$$\"+#*\\[$3#F2$\"+G')\\$\\\"F27$$\"+Qz]O@F2 $\"+y65M9F27$$\"+H=4*=#F2$\"+Qbqb8F27$$\"+i4TPAF2$\"+x.'zE\"F27$$\"+V, z#H#F2$\"+!f36:\"F27$$\"+UgbKUBF2$\"+!GoV. \"F27$$\"+cvsoBF2$\"+GJJ%o*F@7$$\"+qJ8&R#F2$\"+H4v0!*F@7$$\"+7nS?CF2$ \"+>TqV$)F@7$$\"+b-oXCF2$\"+jd?vwF@7$$\"+G,%GZ#F2$\"+a$Gq&pF@7$$\"#D! \"\"$\"+)R9zC'F@-%&COLORG6&%$RGBG$\"\"*F[flF($\"\"%F[fl-%*THICKNESSG6# \"\"#-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F(Fiel;F($\"#;F[fl" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 139 "The first erro r graph is plotted using standard 10 digit arithmetic for the evaluati on of the procedure which gives the numerical solution." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "plot('g n1'(x)-g(x),x=0..2.5,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7idl7$$\"\"!F)F(7$$\"+T&)G\\a!#6F(7 $$\"+O&o!>5!#5F(7$$\"+)>)G_:F1F(7$$\"+#Hl1#=F1F(7$$\"+&QU!*3#F1F(7$$\" +eJfAAF1F(7$$\"+IR9cBF1F(7$$\"+wx$GP#F1F(7$$\"+B;`*Q#F1F(7$$\"+qaA1CF1 F(7$$\"+;$>HU#F1$!\"\"!\"*7$$\"+iJhRCF1F(7$$\"+4qIcCF1F(7$$\"+c3+tCF1F (7$$\"+-Zp*[#F1F(7$$\"+&R#3BDF1F(7$$\"+)3qkb#F1F(7$$\"+MR;tDF1FM7$$\"+ \"yd)*e#F1$\"\"\"FO7$$\"+G;b1EF1Fbo7$$\"+uaCBEF1FM7$$\"+2GsQEF1FM7$$\" +S,?aEF1F(7$$\"+sunpEF1F(7$$\"+0[:&o#F1F(7$$\"+Q@j+FF1Fbo7$$\"+q%4hr#F 1F(7$$\"+.oeJFF1FM7$$\"+OT1ZFF1Fbo7$$\"+o9aiFF1Fbo7$$\"+,)=!yFF1F(7$$ \"+Mh\\$z#F1FM7$$\"+mM(*3GF1F(7$$\"+*z]W#GF1F(7$$\"+K\"G*RGF1Fbo7$$\"+ kaSbGF1F(7$$\"+(z#)3(GF1FM7$$\"+I,O')GF1Fbo7$$\"+iu$=!HF1F(7$$\"+&z9t \"HF1F(7$$\"+G@zKHF1Fbo7$$\"+g%p#[HF1F(7$$\"+$zYP'HF1F(7$$\"+ETAzHF1F( 7$$\"+e9q%*HF1F(7$$\"+*y5m0$F1F(7$$\"+?,_=JF1F(7$$\"+CU$\\P$F1F(7$$\"+ G$[8j$F1F(7$$\"+&*frhTF1F(7$$\"+lFQ!p%F1F(7$$\"+?:=M_F1F(7$$\"+g(fJr&F 1F(7$$\"+7eP_iF1F(7$$\"+v34BlF1F(7$$\"+Pf!Qz'F1F(7$$\"+qp-foF1F(7$$\"+ +![U#pF1F(7$$\"+:&eo&pF1F(7$$\"+I!p%*)pF1F(7$$\"+!Hud+(F1F(7$$\"+X&z?- (F1FM7$$\"++[QQqF1Fbo7$$\"+g+paqF1FM7$$\"+?`*42(F1FM7$$\"+v0I(3(F1F(7$ $\"+Ieg.rF1F(7$$\"+!46*>rF1F(7$$\"+5;__rF1F(7$$\"+D@8&=(F1F(7$$\"+!QP9 ?(F1F(7$$\"+SEuuF1F(7$$\"+v!GSV(F1FM7$$\"+5[$)[uF1F(7$$\"+]:kjuF1F(7$$\"+ &G[%yuF1F(7$$\"+?]D$\\(F1F(7$$\"+!\\oG_(F1F(7$$\"+l>[_vF1F(7$$\"+be$4n (F1F(7$$\"+W(*Q*y(F1F(7$$\"+DIgCyF1F(7$$\"+5j\")fyF1F(7$$\"+]HUxyF1F(7 $$\"+!fH]*yF1F(7$$\"+Iij7zF1F(7$$\"+vGCIzF1Fbo7$$\"+?&\\y%zF1F(7$$\"+g hXlzF1F(7$$\"++G1$)zF1F(7$$\"+S%p1+)F1F(7$$\"+?F)e.)F1F(7$$\"+0g4r!)F1 F(7$$\"+!H4j5)F1F(7$$\"+qD_T\")F1F(7$$\"+5#H\"f\")F1FM7$$\"+betw\")F1F (7$$\"++DM%>)F1F(7$$\"+S\"\\>@)F1FM7$$\"+!yb&H#)F1FM7$$\"+?C;Z#)F1F(7$ $\"+g!pZE)F1F(7$$\"+0dP#G)F1F(7$$\"+]B)**H)F1F(7$$\"+!**)e<$)F1F(7$$\" +Ic>N$)F1Fbo7$$\"+qA!GN)F1Fbo7$$\"+0urn$)F1F(7$$\"+SDj#Q)F1F(7$$\"+vwa (R)F1F(7$$\"+5GY7%)F1F(7$$\"+!3$HU%)F1F(7$$\"+]L7s%)F1F(7$$\"+!*QyJ&)F 1F(7$$\"+DWW\"f)F1F(7$$\"+&pu7i)F1F(7$$\"+l\\5^')F1F(7$$\"++,-m')F1F(7 $$\"+N_$4o)F1F(7$$\"+q.&ep)F1F(7$$\"+0bw5()F1Fbo7$$\"+S1oD()F1F(7$$\"+ vdfS()F1F(7$$\"+54^b()F1FM7$$\"+XgUq()F1F(7$$\"+!=T`y)F1F(7$$\"+:jD+)) F1FM7$$\"+]9<:))F1Fbo7$$\"+$e'3I))F1F(7$$\"+XTo2\"*F1F(7$$\"+.\"FOF(7$$\"+Egw[7FOF(7$$\"+*f%)QI\"FOF(7$$\"+/M)oI\"FOF(7$$\"+ 5A))48FOF(7$$\"+7;Q68FOF(7$$\"+:5)GJ\"FOF(7$$\"+=/Q98FOF(7$$\"+?)zeJ\" FOFM7$$\"+A#ztJ\"FOF(7$$\"+D'y)=8FOF(7$$\"+G!y.K\"FOF(7$$\"+Iu(=K\"FOF (7$$\"+KoPB8FOF(7$$\"+Ni([K\"FOF(7$$\"+QcPE8FOF(7$$\"+S](yK\"FOFbo7$$ \"+UWPH8FOFM7$$\"+XQ(3L\"FOF(7$$\"+[KPK8FOF(7$$\"+]E(QL\"FOFM7$$\"+_?P N8FOF(7$$\"+b9(oL\"FOFM7$$\"+e3PQ8FOF(7$$\"+g-()R8FOF(7$$\"+i'p8M\"FOF M7$$\"+l!pGM\"FOFM7$$\"+o%oVM\"FOFM7$$\"+qy'eM\"FOFbo7$$\"+ssOZ8FOF(7$ $\"+vm')[8FOF(7$$\"+ygO]8FOF(7$$\"+![l=N\"FOF(7$$\"+w[[`8FOF(7$$\"+sU5 b8FOF(7$$\"+oOsc8FOF(7$$\"+jIMe8FOFbo7$$\"+a=eh8FOFbo7$$\"+Y1#[O\"FOFb o7$$\"+U+Wm8FOFbo7$$\"+Q%f!o8FOF(7$$\"+M)y'p8FOF(7$$\"+H#)Hr8FOFbo7$$ \"+Cw\"HP\"FOF(7$$\"+?q`u8FOF(7$$\"+;k:w8FOF(7$$\"+7exx8FOF(7$$\"+3_Rz 8FOF(7$$\"+/Y,\"Q\"FOF(7$$\"++Sj#Q\"FOF(7$$\"+&R`UQ\"FOFM7$$\"+!zseQ\" FOF(7$$\"+'=#\\(Q\"FOF(7$$\"+#e6\"*Q\"FOF(7$$\"+y4t!R\"FOF(7$$\"+u.N#R \"FOF(7$$\"+q(pRR\"FOFbo7$$\"+m\"*e&R\"FOF(7$$\"+i&3sR\"FOF(7$$\"+ez#) )R\"FOFbo7$$\"+atW+9FOF(7$$\"+]n1-9FOFM7$$\"+Xho.9FOFM7$$\"+S\"f`S\"FO F(7$$\"+M@.29FOFbo7$$\"+G^q39FOF(7$$\"+A\"y.T\"FOFM7$$\"+;6079FOF(7$$ \"+6Ts89FOF(7$$\"+1rR:9FOF(7$$\"++,2<9FOF(7$$\"+x?wB9FOF(7$$\"+aSXI9FO F(7$$\"+[q7K9FOF(7$$\"+U+!QV\"FOF(7$$\"+OIZN9FOF(7$$\"+Jg9P9FOFM7$$\"+ E!>)Q9FOF(7$$\"+??\\S9FOF(7$$\"+9];U9FOF(7$$\"+3!QQW\"FOF(7$$\"+-5^X9F OF(7$$\"+'*R=Z9FOFbo7$$\"+!*p&)[9FOFM7$$\"+&)*H0X\"FOF(7$$\"+!)H?_9FOF (7$$\"+uf(QX\"FOF(7$$\"+o*[bX\"FOF(7$$\"+i>Ad9FOFM7$$\"+g'e)e9FOF(7$$ \"+f`\\g9FOF(7$$\"+e?8i9FOF(7$$\"+c(oPY\"FOF(7$$\"+aaSl9FOFbo7$$\"+`@/ n9FOFM7$$\"+_)y'o9FOF(7$$\"+]bJq9FOF(7$$\"+WB'oZ\"FOF(7$$\"+R\"4M[\"FO F(7$$\"+GF]'\\\"FOF(7$$\"+;jf4:FOF(7$$\"+'\\jF^\"FOF(7$$\"+w1$f^\"FOF( 7$$\"+mU^<:FOF(7$$\"+cy4>:FOFM7$$\"+Y9o?:FOF(7$$\"+O]EA:FOFM7$$\"+E'[Q _\"FOF(7$$\"+;AVD:FOF(7$$\"+1e,F:FOF(7$$\"+'R*fG:FOFbo7$$\"+')H=I:FOF( 7$$\"+wlwJ:FOFM7$$\"+m,NL:FOF(7$$\"+cP$\\`\"FOF(7$$\"+;\"o7a\"FOF(7$$ \"+wCgZ:FOF(7$$\"+c'p2b\"FOF(7$$\"+Oo$Rb\"FOF(7$$\"+E/_b:FOF(7$$\"+;S5 d:FOF(7$$\"+1woe:FOF(7$$\"+&>r-c\"FOFM7$$\"+-&H?c\"FOF(7$$\"+3yyj:FOF( 7$$\"+:hal:FOFbo7$$\"+AWIn:FOFM7$$\"+GF1p:FOF(7$$\"+N5#3d\"FOF(7$$\"+U $zDd\"FOF(7$$\"+[wLu:FOF(7$$\"+v3P\"e\"FOF(7$$\"+-TS)e\"FOF(7$$\"+HtV& f\"FOF(7$$\"+c0Z-;FOF(7$$\"+pr)fg\"FOF(7$$\"+#y.&4;FOF(7$$\"+*3i7h\"FO F(7$$\"+'R?Ih\"FOF(7$$\"+-(yZh\"FOFbo7$$\"+4q`;;FOFM7$$\"+Ep6=;FOFM7$$ \"+Uop>;FOF(7$$\"+fnF@;FOFbo7$$\"+wm&Gi\"FOF(7$$\"+5l,E;FOF(7$$\"+Wj%Qn\"FOF(7$$\"+Q)Gbn\"FOF(7$$\"+ Od@x;FOFbo7$$\"+ME!*y;FOF(7$$\"+L&*e!o\"FOF(7$$\"+ErL(o\"FOF(7$$\"+?Z3 %p\"FOF(7$$\"+2*zvq\"FOF(7$$\"+%4v5s\"FOF(7$$\"+%QKbu\"FOF(7$$\"+u'*)* pR=FOFM7$$\"+%zi2%=FOF(7$$\"+4_LU=FOF(7$$\"+Cw!R% =FOF(7$$\"+Q+[X=FOFM7$$\"+`C0Z=FOF(7$$\"+o[i[=FOF(7$$\"+'=/7'=FOF(7$$ \"+/Nyt=FOF(7$$\"+G:3+>FOF(7$$\"+^&zj#>FOF(7$$\"+-=!y(>FOF(7$$\"+LhjJ? FOF(7$$\"+#*\\[$3#FOF(7$$\"+Qz]O@FOF(7$$\"+H=4*=#FOF(7$$\"+i4TPAFOF(7$ $\"+V,z#H#FOF(7$$\"+UgbKUBFOF(7$$\"+$HsRM#FOF(7$$\"+WEiX BFOF(7$$\"+&*HFZBFOF(7$$\"+YL#*[BFOFbo7$$\"+(pt0N#FOF(7$$\"+[SA_BFOF(7 $$\"+)RuQN#FOFM7$$\"+\\Z_bBFOF(7$$\"+]a#)eBFOF(7$$\"+_h7iBFOF(7$$\"+.l xjBFOF(7$$\"+aoUlBFOF(7$$\"+0s2nBFOF(7$$\"+cvsoBFOFbo7$$\"+2zPqBFOFbo7 $$\"+e#G?P#FOF(7$$\"+4'yOP#FOF(7$$\"+g*G`P#FOF(7$$\"+6$zpP#FOF(7$$\"+i 'H'yBFOFbo7$$\"+7+G!Q#FOF(7$$\"+j.$>Q#FOF(7$$\"+k5B&Q#FOF(7$$\"+m<`)Q# FOF(7$$\"+<@=!R#FOF(7$$\"+oC$=R#FOF(7$$\"+>G[$R#FOF(7$$\"+qJ8&R#FOFbo7 $$\"+mFr'R#FOF(7$$\"+jBH)R#FOF(7$$\"+g>()*R#FOF(7$$\"+c:X,CFOF(7$$\"+[ 2h/CFOF(7$$\"+T*pxS#FOF(7$$\"+E$)39CFOF(7$$\"+7nS?CFOF(7$$\"+%[VIV#FOF (7$$\"+b-oXCFOF(7$$\"+G,%GZ#FOF(7$$\"#DFNF(-%'COLOURG6&%$RGBGF(F($\"*+ +++\"!\")-%+AXESLABELSG6$Q\"x6\"Q!Fjio-%%VIEWG6$;F(F]io%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 136 "The solu tion has been constructed in such a way that up to a point it will pro duce more accurate values when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "eval f[15](plot('gn1'(x)-g(x),x=0..2.5,color=blue,numpoints=100));" }} {PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7]^m 7$$\"\"!F)F(7$$\"0ihh6*f-L!#<$\"\"\"!#97$$\"0DBBB)>0mF-F.7$$\"05//z(\\ c#)F-F(7$$\"0!\\[[tz2**F-F(7$$\"0dc1p4f:\"!#;$!#AF07$$\"0lkkkR5K\"F=$! #QF07$$\"0#33e&*H^;F=$\"#RF07$$\"0)ppp%f:)>F=$\"$I\"F07$$\"0988Q>=J#F= $\"#$)F07$$\"0IHHHz?k#F=$!#7F07$$\"0POhnO%HHF=$\"\"(F07$$\"0WV$fSz;KF= F.7$$\"0)p%4vs/O$F=$!#=F07$$\"0^]DW^T]$F=$!\")F07$$\"0/aT8Iyk$F=$\"#GF 07$$\"0edd#)3:z$F=$\"#zF07$$\"07ht^(=NRF=$\"$A\"F07$$\"0lk*3i')ySF=$\" $V\"F07$$\"0UmZb02:%F=Fgp7$$\"0=o0!\\aAUF=$\"$N\"F07$$\"0&*pjC%Q%H%F=$ \"$@\"F07$$\"0sr@fBiO%F=$\"$-\"F07$$\"0EvPG-*4XF=$\"#cF07$$\"0!)y`(4e` YF=$\"#;F07$$\"0M#)pmfsz%F=$!\"\"F07$$\"0(eee$Q4%\\F=$\"#6F07$$\"0vs(* y,TE&F=$\"#KF07$$\"0gf4Alse&F=$\"\"'F07$$\"0]Y@lG/\"fF=$\"#'*F07$$\"0N LL3#fLiF=$\"$^\"F07$$\"0??X^bnb'F=$\"#()F07$$\"052d%*=*zoF=$\"#L\"Fev$\"#qF07$$\"0T S!Hl#>O\"Fev$\"$,\"F07$$\"0VUUR\"Fev$\"$+\"F07$$\"0ZYYYw>X\"Fev$\"$ H\"F07$$\"0^]]v4?^\"Fev$\"$_\"F07$$\"0)yy.+bF:Fev$\"$B\"F07$$\"0EDDD!4 V:Fev$\"#)*F07$$\"0ji7]I'e:Fev$\"#))F07$$\"0+++vqTd\"FevFiq7$$\"0QP()* 4r*e\"Fev$\"$G\"F07$$\"0vuuC^_g\"Fev$\"$J\"F07$$\"077i\\\"z?;Fev$\"$4 \"F07$$\"0]\\\\uJjj\"Fev$\"#&*F07$$\"0DCCC7um\"FevFe[l7$$\"0+**)RF\\)p \"Fev$\"$z\"F07$$\"0PO'))H.9U3d=Fev$\"$;\"F0 7$$\"0srr'f:t=Fev$\"$<\"F07$$\"0ZYYrF#*)=FevF_q7$$\"0A@@Y*H0>Fev$\"$i \"F07$$\"0'ff47P@>Fev$\"$&=F07$$\"0rqq&HWP>Fev$\"$&>F07$$\"0YXXq9N&>Fe v$\"$(=F07$$\"0@??X'ep>Fev$\"$n\"F07$$\"0'\\\\*>ec)>FevFgp7$$\"0qpp%*H <+#Fev$\"$F\"F07$$\"0XWWp,y,#FevFa]l7$$\"0A@'**=#Q.#FevFg_l7$$\"0)zz/@ %)\\?Fev$\"$q\"F07$$\"0vu*4B'e1#Fev$\"$g\"F07$$\"0_^^^#)=3#Fev$\"$S\"F 07$$\"0HG.s-z4#Fev$\"$L\"F07$$\"010b#H#R6#Fev$\"$W\"F07$$\"0#=oIJ%*H@F evFicl7$$\"0feeLjf9#Fev$\"$!>F07$$\"0mll:W+@#Fev$\"$p\"F07$$\"0tss(\\7 uAFevFh^l7$$\"0Q)exC32BFevF^z7$$\"0//z(*R+M#FevF^al7$$\"0q>#yu*HP#Fev$ \"$#>F07$$\"0ON&y\\&fS#Fev$\"$>#F07$$\"0-^)yC\"*QCFevF_cl7$$\"0nm\"z*p =Z#FevF^w7$$\"0K#[zu#[]#FevFjbl7$$\"0)zzz\\yPDFev$\"$)>F07$$\"0ONN&o,q FFev$\"$D#F07$$\"0&RRR\\XJIFev$\"$V#F07$$\"0!)yG\">'y/$Fev$\"$A#F07$$ \"0kjj))oU1$Fev$\"$+#F07$$\"0\\[)fen!3$Fev$\"$%>F07$$\"0MLL$G3(4$Fev$ \"$0#F07$$\"0/..y'*)HJFev$\"$[#F07$$\"0usss5F;$Fev$\"$m#F07$$\"0WUUnCb >$Fev$\"$S#F07$$\"0877iQ$GKFev$\"$1#F07$$\"0#==oD:hKFev$\"$E#F07$$\"0_ ^^^mRH$Fev$\"$n#F07$$\"0VUUnx(4LFev$\"$Y#F07$$\"0MLL$))eDLFevF`hl7$$\" 0DCC***RTLFev$\"$.#F07$$\"0;:::6sN$Fev$\"$/#F07$$\"0)pppM$))Q$FevF_]m7 $$\"0!)yyyb/U$Fev$\"$(GF07$$\"0rpp%pEOMFev$\"$*GF07$$\"0igg5y?X$Fev$\" $!GF07$$\"0`^^E*)yY$Fev$\"$g#F07$$\"0WUUU+P[$Fev$\"$P#F07$$\"0NLLe6&* \\$FevF`hl7$$\"0ECCuA`^$Fev$\"$8#F07$$\"0;::!R8JNFevFcil7$$\"02111Xpa$ Fev$\"$`#F07$$\"0qo$\\sP/OFev$\"$I#F07$$\"0KJ\"Q%4=m$Fev$\"$:#F07$$\"0 j7D`D0p$Fev$\"$z#F07$$\"0%R*oiT#>PFev$\"$B$F07$$\"0g%3u'*fLPFev$\"$C$F 07$$\"0Ev7sdzu$Fev$\"$6$F07$$\"0#fYodJiPFev$\"$)GF07$$\"0dcc\"QnwPFev$ \"$e#F07$$\"0K1D#pu$z$FevFcil7$$\"01c$H+#3\"QFevF`\\m7$$\"0%4y#ec$>QFe vF\\[m7$$\"0\"e?OJ*y#QFevF``m7$$\"0oI'*oHk$QFevFe\\m7$$\"0cbICm\\%QFev $\"$Z#F07$$\"0J0*\\$R?'QFev$\"$+$F07$$\"01bnX7\"zQFev$\"$R$F07$$\"0![g jb='*QFev$\"$)HF07$$\"0ba/neK\"RFev$\"$#=F07$$\"0I/txJ.$RFev$\"#pF07$$ \"0/aT)[SZRFevF.7$$\"0#*yvVTf&RFev$!#5F07$$\"0z.5*zZkRFev$!\"'F07$$\"0 mGWa9I(RFev$\"#8F07$$\"0a`y4^:)RFev$\"#VF07$$\"0/`:J(p:SFevFh_m7$$\"0` ___V)\\SFev$\"$3%F07$$\"06555a7G%Fev$\"$$\\F07$$\"0E\\b>y!)H%Fev$\"$i% F07$$\"0S)3!H-\\J%Fev$\"$\\%F07$$\"0aFYQE#Q%Fev$\"$R&F07$$\"0 5%yiF-*R%Fev$\"$`&F07$$\"0CBt&o%eT%Fev$\"$^&F07$$\"0_,k/&\\\\WFev$\"$4 &F07$$\"0!)zaBVJ[%Fev$\"$r%F07$$\"03eXU\"z;XFev$\"$8&F07$$\"0POOhR/b%F ev$\"$!eF07$$\"0)oViRA!e%FevFjim7$$\"0QP7J3+h%Fev$\"$n%F07$$\"0)y.gEzR YFev$\"$5&F07$$\"0RQ)3qdpYFev$\"$*eF07$$\"0kQK=pWo%Fev$\"$>'F07$$\"0!* QwNh$*p%Fev$\"$L'F07$$\"0:R?``Ur%Fev$\"$I'F07$$\"0SRkqX\"HZFev$\"$3'F0 7$$\"0!*R_0I*eZFev$\"$W&F07$$\"0TSSS9()y%FevFh[n7$$\"0RQ)3qU>\\Fev$\"$ ='F07$$\"0POOhR,0&Fev$\"$m'F07$$\"0\\[[By!*H&Fev$\"$(yF07$$\"0322d>)eb Fev$\"$l)F07$$\"0'\\\\*>Vtz&Fev$\"$i*F07$$\"0nll:BY0'Fev$\"%F5F07$$\"0 \\ZZsk=K'Fev$\"%B6F07$$\"0caaH*\\alFev$\"%I7F07$$\"0I/t_--d'Fev$\"%t7F 07$$\"00a\"fd!fe'Fev$\"%%H\"F07$$\"0!Q+\"**3;g'Fev$\"%q7F07$$\"0b`GA7t h'Fev$\"%_7F07$$\"00`lo=([mFevF]bn7$$\"0b_-:D,o'Fev$\"%s8F07$$\"0I-@QG ep'Fev$\"%(Q\"F07$$\"00_RhJ:r'Fev$\"%w8F07$$\"0!=!e%[BFnFev$\"%[8F07$$ \"0b^w2QHu'Fev$\"%>8F07$$\"0I,&48kenFev$\"%18F07$$\"00^8aWVx'Fev$\"%B8 F07$$\"0!3?tx/!z'Fev$\"%l8F07$$\"0_]]+^d!oFev$\"%)R\"F07$$\"0l8,)R(>#o FevFicn7$$\"0!oQoFev$\"%a8F07$$\"0!*R-$*>W&oFev$\"%k8F07$$\"00.`!H kqoFev$\"%.9F07$$\"0?m.)e'o)oFev$\"%_9F07$$\"0IHa&))3.pFev$\"%\"\\\"F0 7$$\"0S#\\I=J>pFev$\"%.:F07$$\"0bbb![`NpFev$\"%)[\"F07$$\"0q=1yd<&pFev $\"%`9F07$$\"0!=ob2)z'pFev$\"%@9F07$$\"0&\\uIP?%)pFev$\"%99F07$$\"053e qE/+(Fev$\"%U9F07$$\"0?r3o\\m,(Fev$\"%!\\\"F07$$\"0NMflsG.(Fev$\"%+:F0 7$$\"0](*4j&4\\qFev$\"%q9F07$$\"0iggg=`1(Fev$\"%j9F07$$\"0][[t'G#>(Fev $\"%F:F07$$\"0QOO'[D>tFev$\"%)o\"F07$$\"0IF-'*y1Q(Fev$\"%3F07$$\"0IF-@a&pxFev$\"%??F07$$\"0])f.Zl.yFev$\"%u>F07$$\" 0rpp>bx$yFev$\"%)*=F07$$\"0?>p\"o.**yFev$\"%^>F07$$\"0qooV=.'zFev$\"%; @F07$$\"0Si$R'yz'zFev$\"%Q@F07$$\"05c=%)Qc(zFev$\"%^@F07$$\"0!)\\V/*H$ )zFev$\"%c@F07$$\"0XVoCf4*zFev$\"%_@F07$$\"0!3$=lzi+)Fev$\"%C@F07$$\"0 ?=o0+;-)Fev$\"%!3#F07$$\"0!>Jf-EH!)Fev$\"%f?F07$$\"0g0=Y?p.)Fev$\"%Y?F 07$$\"0I*Hk1eW!)Fev$\"%P?F07$$\"0&Hzm3C_!)Fev$\"%Q?F07$$\"0I!yr7cn!)Fe v$\"%l?F07$$\"0pnnn\")G3)Fev$\"%&4#F07$$\"0`^^^1YM)Fev$\"%9BF07$$\"0)o o=\"o$QO]*Fev$\"%UKF07$$\"0!z\"*p&H9^*FevFaio7$$\"0 !o**>3A>&*Fev$\"%=KF07$$\"0vv+27q_*Fev$\"%)=$F07$$\"0gL-d%fU&*Fev$\"%6 KF07$$\"0S\"Rqq$F07$$\"0XT\"R&\\)>(*Fev$\"%!R$F07$$\"0yvv+d.&)*Fev$\"%CNF0 7$$\"0999au,,\"F0$\"%;PF07$$\"0pooj#)e.\"F0$\"%zQF07$$\"088j&yPh5F0$\" %&*RF07$$\"0_^^J0[3\"F0$\"%wTF07$$\"0gf4dI#)4\"F0$\"%QUF07$$\"0onn#el6 6F0$\"%xUF07$$\"0GxRvdY6\"F0$\"%zUF07$$\"0(o=\"ofw6\"F0$\"%1VF07$$\"0Y 'R3;m?6F0$\"%*H%F07$$\"011c`jO7\"F0$\"%4VF07$$\"0ED+Rn'H6F0$\"%-VF07$$ \"0XWWCrc8\"F0$\"%6VF07$$\"0WvXTrk8\"F0$\"%DVF07$$\"0W1Zers8\"F0$\"%VV F07$$\"0WP[vr!Q6F0$\"%MVF07$$\"0Wo\\#>()Q6F0$\"%5VF07$$\"0W*4&4s'R6F0$ \"%/VF07$$\"0WI_Es/9\"F0$\"%=VF07$$\"0Wh`Vs79\"F0$\"%SVF07$$\"0V#\\0E2 U6F0$\"%eVF07$$\"0Uad%HnV6F0$\"%[VF07$$\"0U;gGt_9\"F0F\\ap7$$\"0Uyiito 9\"F0$\"%KVF07$$\"0TSl'RZ[6F0F]`p7$$\"0Skqku;:\"F0$\"%YVF07$$\"0R)eF`( [:\"F0$\"%>VF07$$\"0Q>x\\vc:\"F0$\"%&H%F07$$\"0Q]ymvk:\"F0$\"%#H%F07$$ \"0Q\")z$eFd6F0$\"%;VF07$$\"0Q7\"3g2e6F0$\"%WVF07$$\"0QV#yh()e6F0$\"%: VF07$$\"0Qu$[jnf6F0$\"%sUF07$$\"0Q0&=lZg6F0$\"%fUF07$$\"0PO')ow7;\"F0$ \"%#G%F07$$\"09^NbU?;\"F0$\"%AVF07$$\"0#fY=%3G;\"F0$\"%fVF07$$\"0p!Q$G uN;\"F0$\"%uVF07$$\"0Y&H[,Mk6F0$\"%iVF07$$\"0+D\"y=(e;\"F0$\"%$G%F07$$ \"0bazg.u;\"F0$\"%aUF07$$\"0KpGZp\"o6F0$\"%(G%F07$$\"05%yP`$*o6F0$\"%@ VF07$$\"0())p-7qp6F0$\"%*G%F07$$\"0k8w1n/<\"F0$\"%BUF07$$\"0TGD$HBr6F0 $\"%*=%F07$$\"0=Vuz)*><\"F0$\"%.UF07$$\"0'zNiYws6F0$\"%_UF07$$\"0tss_I N<\"F0$\"%8VF07$$\"0#=$p)Rfw6F0Fbfp7$$\"0\"4fYulz6F0$\"%9UF07$$\"0o0:J B/=\"F0$\"%pUF07$$\"0Y?k<*=\"=\"F0$\"%SUF07$$\"0BN8/b>=\"F0$\"%@TF07$$ \"0+]i!4s#=\"F0$\"%BSF07$$\"0azgj_U=\"F0$\"%\\SF07$$\"044fO%y&=\"F0Fcj p7$$\"099*y1R*>\"F0$\"%'>%F07$$\"0>>>*p*H@\"F0$\"%sSF07$$\"0::l7hlB\"F 0$\"%FRF07$$\"0^]+j1LE\"F0$\"%SQF07$$\"0TS:W%\\v7F0$\"%nPF07$$\"0JIID# o(G\"F0$\"%APF07$$\"054M!Q,,8F0$\"%)p$F07$$\"0)yy``M98F0$\"%gOF07$$\"0 YYrA[eK\"F0$\"%5OF07$$\"00005^tL\"F0$\"%dNF07$$\"0111'>bj8F0$\"%zLF07$ $\"0!)zzpg))Q\"F0$\"%)G$F07$$\"0on$F07$$\"0QP7Jc9X\"F0$\"%fJF07$$\"0utBcgNY\"F0$\"%AJF07$$\"0;y$*=' >l9F0$\"%LJF07$$\"0e#Q;=$oY\"F0$\"%CJF07$$\"0+(QVuYo9F0$\"%\"4$F07$$\" 0U\"RqI5q9F0$\"%zIF07$$\"0%eR(pQ`]\"F0$\"%()HF07$$\"0$H/[qV3:F0$\"%0IF07$$\"09w\">f**4:F0$\"%G IF07$$\"0M4.za:^\"F0F^[r7$$\"0bU9m8J^\"F0$\"%dIF07$$\"0wvD`sY^\"F0$\"% \\IF07$$\"0yx-k(zF:F0$\"%hHF07$$\"0!)zzuA4a\"F0$\"%-HF07$$\"0+]P4$*Qa \"F0$\"%zGF07$$\"0??&RM'oa\"F0$\"%+HF07$$\"0I0Ch[$[:F0$\"%SHF07$$\"0S! H&yL)\\:F0$\"%zHF07$$\"0]v\"e*=8b\"F0$\"%**HF07$$\"0hg58/Gb\"F0$\"%!*H F07$$\"0#3$oZudb\"F0$\"%4HF07$$\"0-,E#[ue:F0$\"%XGF07$$\"07'[&**H-c\"F 0$\"%]GF07$$\"0Ar$o^rh:F0$\"%eGF07$$\"0Kc7M+Kc\"F0$\"%MGF07$$\"0UTT^&o k:F0$\"%>>y%4f\"F0$\"%**GF07$$\"0]v\"e @4%f\"F0F^^r7$$\"04fr\\Osf\"F0$\"%sFF07$$\"0oUh$3Q+;F0$\"%WFF07$$\"0EE ^eHh\"F0$\"%cGF07$$\"0#)o:OIXh\"F0$\"%PGF07$$\"0hg5`-hh\"F0$ \"%)y#F07$$\"0g4A!fPA;F0$\"%>FF07$$\"0feLF\\'G;F0$\"%#p#F07$$\"0%e9;w@ I;F0$\"%NFF07$$\"03L*efyJ;F0$\"%zFF07$$\"0L?T;F0$\"%]EF07$$ \"0_wd:MGk\"F0$\"%nEF07$$\"0Y'*eHsWk\"F0$\"%!p#F07$$\"0T;gV5hk\"F0$\"% kEF07$$\"0OOhd[xk\"F0$\"%OEF07$$\"0Ewj&[-^;F0$\"%xEF07$$\"0;;m8,Vl\"F0 $\"%^FF07$$\"01coTxvl\"F0Fcfr7$$\"0'f4(p`3m\"F0$\"%IEF07$$\"0'eLx*HTm \"F0$\"%JEF07$$\"0wvvD1um\"F0$\"%KEF07$$\"0mGW/:*o;F0$\"%1EF07$$\"0d\" GJQUq;F0$\"%.EF07$$\"0[M\"=E$>n\"F0$\"%DEF07$$\"0Q()\\STMn\"F0$\"%hEF0 7$$\"0GS=>]\\n\"F0$\"%$p#F07$$\"0>$py*ekn\"F0$\"%3FF07$$\"05Ybwnzn\"F0 $\"%)p#F07$$\"0+*R_lZz;F0$\"%oEF07$$\"0!>DR`)4o\"F0$\"%GEF07$$\"0\"[5E T\\#o\"F0$\"%%f#F07$$\"0sdH\"H+%o\"F0$\"%\"e#F07$$\"0i5)*p6bo\"F0F[as7 $$\"0_jm[?qo\"F0$\"%>EF07$$\"0U;NFH&)o\"F0$\"%8EF07$$\"0Kp.1Q+p\"F0$\" %%e#F07$$\"0BAs%oa\"p\"F0$\"%qDF07$$\"0yw,[3Rq\"F0$\"%sDF07$$\"0KJJ6qi r\"F0$\"%tDF07$$\"0M$3-i(zr\"F0$\"%0EF07$$\"0ON5H#o> A/@w\"F0$\"%QDF07$$\"0srr6$GoDF07$$\"0#=$p$*)>.=F0$\"%$\\#F07$$\"0 mll57k!=F0Ffis7$$\"0]*>w_i4=F0F`js7$$\"0MLeWQG\"=F0$\"%PDF07$$\"0=nah^ g\"=F0$\"%4DF07$$\"0,,^yk#>=F0$\"%vCF07$$\"0GFx*)y5$=F0$\"%yCF07$$\"0a `.,$*G%=F0$\"%rCF07$$\"0MLL$*z!o=F0$\"%oCF07$$\"0>==8vI*=F0$\"%![#F07$ $\"0GE,?YZ*=F0$\"%kCF07$$\"0OM%osT'*=F0$\"%hCF07$$\"0WUnL)3)*=F0$\"%xC F07$$\"0_]]Sf(**=F0$\"%0DF07$$\"0geLZI9!>F0$\"%@DF07$$\"0om;a,J!>F0$\" %,DF07$$\"0wu*4Ex/>F0Fd\\t7$$\"0%GGyOW1>F0$\"%aCF07$$\"0+**[\"ey4>F0$ \"%uCF07$$\"0;::&z78>F0Fafs7$$\"0CB)>!*z9>F0Fbhs7$$\"0KJ\")3qk\">F0$\" %ODF07$$\"0SRk:T\"=>F0Fg^t7$$\"0[ZZA7)>>F0$\"%'\\#F07$$\"0!*Q,(oG@>F0F i_t7$$\"0JIb^hF#>F0$\"%gCF07$$\"0s@4;OU#>F0$\"%fCF07$$\"098j!3rD>F0$\" %tCF07$$\"0b/F0$\"%-DF07$$\"0'f4(4g'G>F0$\"%JDF07$$\"0Q([UZ8I>F0 Fbhs7$$\"0zyyQ4;$>F0$\"%1DF07$$\"0?qK.%3L>F0$\"%mCF07$$\"0ih'y'eX$>F0$ \"%OCF07$$\"0.`SKLg$>F0$\"%FCF07$$\"0WW%pz]P>F0$\"%QCF07$$\"0FF-Ed/%>F 0$\"%+DF07$$\"0555b1M%>F0$\"%eDF07$$\"0>pc)z5X>F0Fhds7$$\"0GG.U4o%>F0$ \"%gDF07$$\"0P()\\&3^[>F0$\"%KDF07$$\"0YY'*G7-&>F0F[js7$$\"0b0Vs8>&>F0 $\"%iCF07$$\"0kk*e^h`>F0$\"%WCF07$$\"0>%HweYa>F0$\"%XCF07$$\"0uBOf;`&> F0$\"%_CF07$$\"0G`4Jnh&>F0Fi\\t7$$\"0$GGG!=q&>F0$\"%*[#F07$$\"0?>pwBQ' >F0$\"%7CF07$$\"0cbb]H1(>F0$\"%RAF07$$\"0;lFL+P(>F0$\"%CCF07$$\"0vu*f6 xw>F0$\"%F0Fb\\s7$$\"0M%=()>%)z>F0$\"%,FF07$$\"09*y+ uP\")>F0$\"%'o#F07$$\"0%RR9G\"H)>F0$\"%MEF07$$\"0a.;k$)f)>F0Fcft7$$\"0 98)oW0*)>F0$\"%/BF07$$\"0%zT#))*e!*>F0$\"%wAF07$$\"0uAgHD@*>F0$\"%+BF0 7$$\"0aF'42m$*>F0$\"%zBF07$$\"0LKK7'>&*>F0$\"%2DF07$$\"0CBt].&>?F0F]dr 7$$\"0TSSvTc/#F0$\"%3HF07$$\"0a``t&)=2#F0$\"%PIF07$$\"0vuC(Qw&4#F0$\"% 2JF07$$\"0NMMR@67#F0$\"%9KF07$$\"0cbb&y'e9#F0$\"%KLF07$$\"0ml:G$ps@F0$ \"%-NF07$$\"0MLLt/f>#F0$\"%QOF07$$\"0YX&HRcAAF0$\"%jPF07$$\"000b(\\iZA F0$\"%#)QF07$$\"0\"44fRWsAF0$\"%ySF07$$\"0kjjo#G(H#F0Fhjp7$$\"054fh;EK #F0$\"%*[%F07$$\"0>=o:q%\\BF0$\"%\"*[F07$$\"0VUUA#4uBF0$\"%]]F07$$\"0: 9kO(R)R#F0$\"%W_F07$$\"0%QQj\"zVU#F0$\"%'e&F07$$\"0`_-S/.X#F0$\"%>fF07 $$\"0**)*)RQdtCF0$\"%GiF07$$\"#DFir$\"%-lF0-%'COLOURG6&%$RGBGF(F($\"*+ +++\"Fdo-%+AXESLABELSG6$Q\"x6\"Q!Fhbu-%%VIEWG6$;F(Fjau%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 123 "We can i nvestigate the error obtained by applying polynomial interpolation com pared with using (partial) Runge-Kutta steps." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 189 "de := diff( y(x),x)=5*cos(4*x)/(1+y(x));\nic := y(0)=1;\ngn2 := desolveRK(\{de,ic \},y(x),x=0..2.5,method=rk45,output=rkstep);\nevalf[15](plot('gn2'(x)- g(x),x=0..2.5,color=magenta,numpoints=100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$*(\"\"&\"\"\"-%$cosG6 #,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 676 200 200 {PLOTDATA 2 "6&-%'CURVESG6#7is7$$\"\"!F)F(7$$\"0lkkkR5K\"!#;F(7$$ \"0IHHHz?k#F-$\"\")!#97$$\"0edd#)3:z$F-$\"#DF37$$\"0(eee$Q4%\\F-$\"#OF 37$$\"0#333eCEvF-$\"#mF37$$\"0a``.pG,\"!#:$\"#$)F37$$\"0NMMfw=F\"FF$\" $+\"F37$$\"0^]]v4?^\"FF$\"$<\"F37$$\"0\\[[t`1w\"FF$\"$Q\"F37$$\"0XWWp, y,#FF$\"$f\"F37$$\"0tss(\\7uAFF$\"$&=F37$$\"0)zzz\\yPDFF$\"$2#F37$$\"0 ONN&o,qFFF$\"$C#F37$$\"0&RRR\\XJIFF$\"$X#F37$$\"0_^^^mRH$FF$\"$n#F37$$ \"02111Xpa$FF$\"$$GF37$$\"0dcc\"QnwPFF$\"$*HF37$$\"0cbICm\\%QFF$\"$;$F 37$$\"0ba/neK\"RFF$\"$T$F37$$\"0a`y4^:)RFF$\"$U$F37$$\"0`___V)\\SFFFgq 7$$\"0#>>php2TFF$\"$[$F37$$\"0KJJ\")[b;%FF$\"$t$F37$$\"0sqqX,MA%FF$\"$ S%F37$$\"06555a7G%FF$\"$D&F37$$\"0om\"z/b[VFF$\"$F&F37$$\"0CBt&o%eT%FF $\"$G&F37$$\"0_,k/&\\\\WFF$\"$J&F37$$\"0!)zaBVJ[%FF$\"$P&F37$$\"03eXU \"z;XFF$\"$_&F37$$\"0POOhR/b%FF$\"$!eF37$$\"0QP7J3+h%FFF\\u7$$\"0RQ)3q dpYFF$\"$#eF37$$\"0SRkqX\"HZFF$\"$&eF37$$\"0TSSS9()y%FF$\"$/'F37$$\"0! *R_b#R@[FF$\"$I'F37$$\"0SRkqqS&[FF$\"$#oF37$$\"0!*Qw&)[n)[FF$\"$&oF37$ $\"0RQ)3qU>\\FFF]w7$$\"0QP7J$y%)\\FF$\"$(oF37$$\"0POOhR,0&FF$\"$(pF37$ $\"0\\[[By!*H&FF$\"$y(F37$$\"0322d>)ebFF$\"$g)F37$$\"0'\\\\*>Vtz&FF$\" $U*F37$$\"0nll:BY0'FF$\"%L5F37$$\"0\\ZZsk=K'FF$\"%Y6F37$$\"0caaH*\\alF F$\"%[7F37$$\"0_]]+^d!oFF$\"%(R\"F37$$\"0iggg=`1(FF$\"%5:F37$$\"0QOO'[ D>tFF$\"%I;F37$$\"0,++D^\\c(FF$\"%abx$yFF$\"%2>F37$$\"0pn nn\")G3)FF$\"%%4#F37$$\"0`^^^1YM)FF$\"%TAF37$$\"0)oo=\"o\"F3$\"%kTF37$$\"0>>>*p* H@\"F3$\"%%3%F37$$\"0::l7hlB\"F3$\"%kRF37$$\"0^]+j1LE\"F3$\"%YQF37$$\" 0JIID#o(G\"F3$\"%VPF37$$\"0)yy``M98F3$\"%KOF37$$\"00005^tL\"F3$\"%MNF3 7$$\"0111'>bj8F3$\"%AMF37$$\"0!)zzpg))Q\"F3$\"%BLF37$$\"0on>>y%4f\"F3$\"%$y#F37$$\"0hg5`-hh\"F3$\"%IFF37$ $\"0dcc,'>T;F3$\"%(o#F37$$\"0wvvD1um\"F3$\"%]EF37$$\"0BAs%oa\"p\"F3$\" %8EF37$$\"0KJJ6qir\"F3$\"%!e#F37$$\"0kjj`nNu\"F3$\"%[DF37$$\"0srr6$Go< F3$\"%GDF37$$\"0JI!G%fNz\"F3$\"%8DF37$$\"0,,^yk#>=F3$\"%1DF37$$\"0a`., $*G%=F3$\"%*\\#F37$$\"0MLL$*z!o=F3$\"%+DF37$$\"0>==8vI*=F3$\"%0DF37$$ \"0[ZZA7)>>F3$\"%F3$\"%QDF37$$\"0$GGG!=q&>F3$\"%fDF3 7$$\"0cbb]H1(>F3$\"%&e#F37$$\"0vu*f6xw>F3$\"%(e#F37$$\"0%RR9G\"H)>F3$ \"%%f#F37$$\"0a.;k$)f)>F3$\"%.EF37$$\"098)oW0*)>F3$\"%>EF37$$\"0uAgHD@ *>F3$\"%[EF37$$\"0LKK7'>&*>F3$\"%&p#F37$$\"0qViaM#)*>F3$\"%qFF37$$\"01 b#pHF,?F3$\"%-GF37$$\"0UmAR6V+#F3$\"%.GF37$$\"0yx_\")\\t+#F3$\"%/GF37$ $\"0^+8mEM,#F3$\"%2GF37$$\"0CBt].&>?F3$\"%:GF37$$\"0`-!p!Qg-#F3$\"%YGF 37$$\"0#=oIEdK?F3$\"%pGF37$$\"07hB>2\"R?F3$\"%tGF37$$\"0TSSvTc/#F3$\"% !)GF37$$\"0a``t&)=2#F3$\"%(*HF37$$\"0vuC(Qw&4#F3$\"%+JF37$$\"0NMMR@67# F3$\"%4KF37$$\"0cbb&y'e9#F3Fgdl7$$\"0ml:G$ps@F3$\"%]MF37$$\"0MLLt/f>#F 3$\"%!e$F37$$\"0YX&HRcAAF3$\"%MPF37$$\"000b(\\iZAF3$\"%,RF37$$\"0\"44f RWsAF3$\"%%4%F37$$\"0kjjo#G(H#F3$\"%>VF37$$\"054fh;EK#F3$\"%>XF37$$\"0 >=o:q%\\BF3$\"%VZF37$$\"0VUUA#4uBF3$\"%t\\F37$$\"0:9kO(R)R#F3$\"%L_F37 $$\"0%QQj\"zVU#F3$\"%PbF37$$\"0`_-S/.X#F3$\"%BeF37$$\"0**)*)RQdtCF3$\" %@hF37$$F8!\"\"$\"%!\\'F3-%'COLOURG6&%$RGBG$\"*++++\"!\")F(F]gm-%+AXES LABELSG6$Q\"x6\"Q!Fdgm-%%VIEWG6$;F(Fefm%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph compares the two methods of interpolation in te rms of their errors. The discrete points give the errors at the interp olation points whose horizontal location is determined by extracting t he " }{TEXT 292 1 "x" }{TEXT -1 38 " coordinates from a discrete solut ion." }}{PARA 0 "" 0 "" {TEXT -1 74 "The error curve for the polynomia l interpolation obtained via the option \"" }{TEXT 262 15 "output=rkin terp" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" }{TEXT -1 107 " while the error curve for interpolation obtained by performing R unge-Kutta steps obtained via the option \"" }{TEXT 262 13 "output=rks tep" }{TEXT -1 15 "\" is shown in " }{TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 575 "de := diff(y(x),x)=5*cos(4*x)/(1+y(x));\nic := y(0)= 1;\ngn1 := desolveRK(\{de,ic\},x=0..0.8,method=rk45,output=rkinterp): \ngn2 := desolveRK(\{de,ic\},x=0..0.8,method=rk45,output=rkstep):\npts := desolveRK(\{de,ic\},x=0..0.8,method=rk45,output=points):\npts2 := \+ [seq([pts[i,1],evalf[18](gn2(pts[i,1])-g(pts[i,1]))],i=1..nops(pts))]: \np1 := plot([pts2$3],style=point,symbol=[circle,diamond,cross],color= [black,coral$2]):\np2 := evalf[18](plot(['gn1'(x)-g(x),'gn2'(x)-g(x)], x=0.3..0.6,\n color=[blue,magenta],numpoints=100)):\nplots [display]([p1,p2],view=[0.3..0.6,-2e-12..1e-11]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$*(\"\"&\"\"\"-%$cosG6 #,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 704 277 277 {PLOTDATA 2 "6)-%'CURVESG6&7E7$$\"\"!F)F(7$$\"3-+++++++5!#>$\"3+++ ++++S`!#K7$$\"3)******fSj91$F-$\"3-+++++ScC!#I7$$\"3'******R$32]^F-$\" 3o************zXF67$$\"3Y*****f#y^lsF-$\"3a**********p/lF67$$\"3y***** *f\\q0%*F-$\"3a**********4D$)F67$$\"3'******Hfbq:\"!#=$\"3.+++++p15!#H 7$$\"39+++d6;w8FI$\"3#************4=\"FL7$$\"37+++;_<)f\"FI$\"3'****** *****oa8FL7$$\"30+++i$3N#=FI$\"3&**********\\>`\"FL7$$\"31+++)z+F0#FI$ \"32+++++B7z)=FL7$$\"3$)*****p&[n DDFI$\"3A+++++Er?FL7$$\"3%******p$ohrFFI$\"3++++++=aAFL7$$\"3$)*****H< jg-$FI$\"31+++++OaCFL7$$\"3;+++)f$z\"H$FI$\"31+++++WuEFL7$$\"3E+++0qqt NFI$\"3!**********R6&HFL7$$\"3y*****RLgD)QFI$\"3&***********\\8MFL7$$ \"3#)*****R*3AfUFI$\"3=+++++!)e_FL7$$\"3E+++H\\s\\XFI$\"3Q+++++\"*)z&F L7$$\"3=+++\"*4>b[FI$\"3m*********Rs$oFL7$$\"3S+++)3@N8&FI$\"3O******* ****fo(FL7$$\"3E++++nR&R&FI$\"3S+++++>#\\)FL7$$\"3!*******oHEYcFI$\"3$ )*********fFI*FL7$$\"3%)*****z*o'*))eFI$\"3,++++]'\\,\"!#G7$$\"3Q+++u< EDhFI$\"31+++++h.6Fas7$$\"3U+++c-McjFI$\"3)*********pB(>\"Fas7$$\"3#)* ****>RkIe'FI$\"33++++?U%H\"Fas7$$\"3()*****Rgyg!oFI$\"33++++]7(R\"Fas7 $$\"3`+++`r'e-(FI$\"38++++?i/:Fas7$$\"3>+++*4!yUsFI$\"3.++++!)H;;Fas7$ $\"3A+++wu.duFI$\"3%)********zUJ+& =Fas7$$\"3m*****fb?x(yFI$\"33++++Gyr>Fas7$$\"3U+++++++!)FI$\"31++++(>a +#Fas-%'COLOURG6&%$RGBGF)F)F)-%'SYMBOLG6#%'CIRCLEG-%&STYLEG6#%&POINTG- F$6&F&-Fev6&Fgv$\"*++++\"!\")$\")AR!)\\FfwF(-Fiv6#%(DIAMONDGF\\w-F$6&F &Fbw-Fiv6#%&CROSSGF\\w-F$6$7b_l7$$\"\"$!\"\"$\"'!)Q@!#<7$$\"3)yyyyBEz+ $FI$\"'diAFjx7$$\"3wvvvvC&e,$FI$\"'FxBFjx7$$\"3qppp%f:)>IFI$\"'9?CFjx7 $$\"3kjjj8(yP-$FI$\"'zXCFjx7$$\"3edddK=uFIFI$\"'*=X#Fjx7$$\"3_^^^^\\qJ IFI$\"'$)HCFjx7$$\"3\"444f5)\\XIFI$\"'q_AFjx7$$\"3IIIIg7HfIFI$\"'Mg?Fj x7$$\"3:::l#=Zq1$FI$\"'#z)>Fjx7$$\"3++++0J![2$FI$\"'`_>Fjx7$$\"3&[[[t- fD3$FI$\"'\"f&>Fjx7$$\"3qppp\\\\J!4$FI$\"'L&*>Fjx7$$\"3(pppphHf5$FI$\" 'fd@Fjx7$$\"3CCCC%GW:7$FI$\"'?qBFjx7$$\"3ssssPZ3PJFI$\"'wcDFjx7$$\"3@@ @@\">DE:$FI$\"'GfEFjx7$$\"31111'=H)fJFI$\"'yoEFjx7$$\"3\"4444=Lq;$FI$ \"'1`EFjx7$$\"3wvvvvrBuJFI$\"'X8EFjx7$$\"3hgggq6W\"=$FI$\"'+`DFjx7$$\" 3SRRR4)fj>$FI$\"'l#Q#Fjx7$$\"3====[%y7@$FI$\"'%**>#Fjx7$$\"3(pppp)G**= KFI$\"'mA@Fjx7$$\"3wvvvDtqEKFI$\"'9p?Fjx7$$\"3aaaakMXI$FI$\"'>`DFjx7$$\"3++++5\"o%=LFI$\"'I.BF jx7$$\"3UUUUA?SKLFI$\"'q'4#Fjx7$$\"3@@@r$fBjL$FI$\"'?f?Fjx7$$\"3++++l^ CSLFI$\"'eK?Fjx7$$\"3zyyGOn;WLFI$\"'>?Fjx7$$\"3;:::]9$fN$FI$\"'.P?Fjx7$$\"3%RRR9- `)fLFI$\"'%R1#Fjx7$$\"3tsss#fuPO$FI$\"'j*4#Fjx7$$\"3GFFF(GD&zLFI$\"'s3 BFjx7$$\"3#====)fF&R$FI$\"'\"4c#Fjx7$$\"3aaaa%pa/T$FI$\"'loFFjx7$$\"3F FFF2MjDMFI$\"'e%)GFjx7$$\"3UUU#*p__KMFI$\"'%z*GFjx7$$\"3edddKrTRMFI$\" '^&)GFjx7$$\"3tssA&**3jW$FI$\"'@[GFjx7$$\"3)yyyy&3?`MFI$\"'V)y#Fjx7$$ \"3YXXXS5fpMFI$\"'!*zDFjx7$$\"3....B7)f[$FI$\"'2TBFjx7$$\"3IIIISN#H\\$ FI$\"'K`AFjx7$$\"3edddde')*\\$FI$\"'9%=#Fjx7$$\"3&[[[[<3o]$FI$\"';S@Fj x7$$\"37777#\\]P^$FI$\"'&o7#Fjx7$$\"3)yyyGi,*HNFI$\"'yJAFjx7$$\"3kjjj` F0YNFI$\"'X5DFjx7$$\"31111T#\\.c$FI$\"'s1GFjx7$$\"3[[[[GdkuNFI$\"'QXHF jx7$$\"31111T7L!f$FI$\"'L'o#Fjx7$$\"3kjjj`n,1OFI$\"'%oE#Fjx7$$\"3\"444 42`4i$FI$\"'sm>Fjx7$$\"3====)Q*)ej$FI$\"'yl=Fjx7$$\"3LLLLoQZ^OFI$\"'o! )>Fjx7$$\"3[[[[[$eqm$FI$\"'+jAFjx7$$\"3%RRRR=\"o&p$FI$\"'a1HFjx7$$\"3O OOO\")z66PFI$\"':cJFjx7$$\"3zyyyyZbEPFI$\"'&pD$Fjx7$$\"3111J-McIPFI$\" 'SbKFjx7$$\"3MLL$e-sXt$FI$\"'IUKFjx7$$\"3hggN\\1eQPFI$\"'(z@$Fjx7$$\"3 )yyyGF*eUPFI$\"'%G=$Fjx7$$\"3UUU#*>lg]PFI$\"'%G3$Fjx7$$\"3(ppppwB'ePFI $\"'Q\\HFjx7$$\"3XXXX:*Rly$FI$\"'`uBFjx7$$\"3CCCumu2%z$FI$\"'dQAFjx7$$ \"3-...=]h,QFI$\"'NK@Fjx7$$\"3UUUn$z$Q0QFI$\"'o$4#Fjx7$$\"3\"===$pD:4Q FI$\"'Bm?Fjx7$$\"3?@@'\\M@H\"QFI$\"'*40#Fjx7$$\"3gggg?,p;QFI$\"'\")[?F jx7$$\"3mmmmwTEKQFI$\"')))=#Fjx7$$\"3tsssK#Qy%QFI$\"'_cDFjx7$$\"3====3 W2jQFI$\"'WMIFjx7$$\"3kjjj$e5$yQFI$\"'#))Q$Fjx7$$\"3#===oO_I*QFI$\"'\\ UJFjx7$$\"3++++]Tz2RFI$\"'#)=AFjx7$$\"3\"444%o#yf\"RFI$\"'>B;Fjx7$$\"3 #===oQiT#RFI$\"'Sg5Fjx7$$\"3tssA0lMKRFI$\"&1!eFjx7$$\"3kjjjB1`SRFI$\"& R:#Fjx7$$\"3....=W)y%RFI$\"$\\#Fjx7$$\"3UUUU7#Q_&RFI$!%o&*Fjx7$$\"3777 i4^\"*eRFI$!&y,\"Fjx7$$\"3#===o+#fiRFI$!%(*zFjx7$$\"3_^^,/*oi'RFI$!%$Fjx7$$\"3wvvv!**o`/%FI$\"'#\\#RFjx7$$\"3FFFF2e#41%FI$\"'i\\VFjx7$$\" 3_^^EX_ekSFI$\"'E(R%Fjx7$$\"3wvvD$oW#oSFI$\"'+CWFjx7$$\"3+++D@T!>2%FI$ \"'qHWFjx7$$\"3CCCCfNcvSFI$\"'V9WFjx7$$\"3sssANC)G3%FI$\"'1AVFjx7$$\"3 @@@@68?!4%FI$\"'1^TFjx7$$\"3qpppz>]0TFI$\"'.uNFjx7$$\"3====[E!37%FI$\" '@*y#Fjx7$$\"3LLLL[=wNTFI$\"')y&>Fjx7$$\"3[[[[[5s]TFI$\"'$4A\"Fjx7$$\" 3444f'\\^&eTFI$\"&\"p#*Fjx7$$\"3qpppW>QmTFI$\"&4C(Fjx7$$\"3+++vorHqTFI $\"&#GmFjx7$$\"3III!GR7U<%FI$\"&0J'Fjx7$$\"3ggg&ohF\"yTFI$\"&ZI'Fjx7$$ \"3\"4444%G/#=%FI$\"&Xi'Fjx7$$\"3IIIIXh7(>%FI$\"'S-6Fjx7$$\"3qppp\\%4A @%FI$\"'fA?Fjx7$$\"3MLLLy=#*>UFI$\"'@QEFjx7$$\"3(ppppIMwA%FI$\"'j2LFjx 7$$\"3ggggNnMNUFI$\"'1!)RFjx7$$\"3CCCCk\"fIC%FI$\"'])e%Fjx7$$\"3ddd2Ix q]UFI$\"')\\/&Fjx7$$\"3!444fHc$eUFI$\"'J__Fjx7$$\"3ddd#)y0=iUFI$\"',]_ Fjx7$$\"3CCCuh[+mUFI$\"'!f@&Fjx7$$\"3!44fY9H)pUFI$\"'Mi^Fjx7$$\"3ddddF MltUFI$\"'A&4&Fjx7$$\"3)yyyG!*4xG%FI$\"'E3[Fjx7$$\"3====yjw,VFI$\"'yyX Fjx7$$\"3UUU#\\&Rz0VFI$\"'EPXFjx7$$\"3mmmmJ:#)4VFI$\"'Y3XFjx7$$\"3!444 %3\"\\QJ%FI$\"'s#\\%Fjx7$$\"3::::&owyJ%FI$\"'-!\\%Fjx7$$\"3SRR*=E/>K%F I$\"'***\\%Fjx7$$\"3kjjjQ=$fK%FI$\"'+AXFjx7$$\"3)yyy`Tf*HVFI$\"';bXFjx 7$$\"37777#*p)RL%FI$\"'U)f%Fjx7$$\"3ssssUiR[VFI$\"'%f\"[Fjx7$$\"3LLLL$ \\0GO%FI$\"':!3&Fjx7$$\"3%[[[)f(o\"yVFI$\"'8P`Fjx7$$\"3OOOOE?`$R%FI$\" '#G]&Fjx7$$\"3aaaaHV)3S%FI$\"')p`&Fjx7$$\"3ssssKmB3WFI$\"'=RbFjx7$$\"3 !444f$*)e:WFI$\"'#)4bFjx7$$\"34444R7%HU%FI$\"'G^aFjx7$$\"3qppp9)o#RWFI $\"'#3C&Fjx7$$\"3IIII!R'fbWFI$\"'`$)\\Fjx7$$\"31111r[tpWFI$\"'N)z%Fjx7 $$\"3#====NtQ[%FI$\"'O;ZFjx7$$\"3&[[[t<&)y[%FI$\"'Q>ZFjx7$$\"3)yyyG+(* =\\%FI$\"'`NZFjx7$$\"3\"444%G)3f\\%FI$\"'IlZFjx7$$\"3%RRRRl?**\\%FI$\" 'x3[Fjx7$$\"3++++0V%z]%FI$\"'XN\\Fjx7$$\"31111cz'f^%FI$\"'U3^Fjx7$$\"3 %[[[)HLfIXFI$\"'w&[&Fjx7$$\"3jjjj.(=_a%FI$\"'ludFjx7$$\"33444kl@hXFI$ \"'wYcFjx7$$\"3aaaaCW@xXFI$\"'*)*>&Fjx7$$\"3ddddsy,\"f%FI$\"'vc[Fjx7$$ \"3gggg?8#[g%FI$\"'l&o%Fjx7$$\"3777i\\9v3YFI$\"')[n%Fjx7$$\"3jjjjy:o7Y FI$\"'*4o%Fjx7$$\"39::l2Z FI$\"'YIiFjx7$$\"37777sCAFZFI$\"'M>hFjx7$$\"3[[[[tvuTZFI$\"'THeFjx7$$ \"3&[[[[nsiv%FI$\"'E0bFjx7$$\"3(pppWoBTw%FI$\"'A[`Fjx7$$\"34444%pu>x%F I$\"'XB_Fjx7$$\"3:::!*)>+fx%FI$\"'ox^Fjx7$$\"3@@@r.d#)zZFI$\"'?X^Fjx7$ $\"3FFF_37v$y%FI$\"'YF^Fjx7$$\"3LLLL8nn(y%FI$\"'uD^Fjx7$$\"3@@@@w=k-[F I$\"'H!G&Fjx7$$\"34444Rqg<[FI$\"'0(o&Fjx7$$\"3LLLLorNL[FI$\"'u&G'Fjx7$ $\"3dddd(H2\"\\[FI$\"'')znFjx7$$\"3+++]7t*[FI$\"'xzh Fjx7$$\"3_^^^\"pe7!\\FI$\"'8[hFjx7$$\"3GFFFP!)>0\\FI$\"':IhFjx7$$\"3.. ..$QP\"4\\FI$\"'*f7'Fjx7$$\"3::::5-BC\\FI$\"'%*HiFjx7$$\"3FFFFPIKR\\FI $\"'5zkFjx7$$\"3zyyy=_Vp\\FI$\"'&*oqFjx7$$\"3OOOO\"H)Hx\\FI$\"'lyrFjx7 $$\"3%RRRROh^)\\FI$\"',`sFjx7$$\"3_^^^OW-$*\\FI$\"'q(G(Fjx7$$\"344444v )3+&FI$\"'S\"G(Fjx7$$\"3!zyyG'=P:]FI$\"'oqrFjx7$$\"3mmmm;i&)H]FI$\"'Nm pFjx7$$\"3?@@@w,pW]FI$\"'eGnFjx7$$\"3wvvvNT_f]FI$\"'/\\lFjx7$$\"3vsssi Lrn]FI$\"'t1lFjx7$$\"3qppp*e-f2&FI$\"''*>lFjx7$$\"3lmmm;=4%3&FI$\"'n&f 'Fjx7$$\"3jjjjV5G#4&FI$\"'hMnFjx7$$\"35777#R5r5&FI$\"'b:rFjx7$$\"3gggg S(R>7&FI$\"'))HvFjx7$$\"3][[B(=Jd7&FI$\"'g3wFjx7$$\"3NOO'QjA&H^FI$\"'L jwFjx7$$\"3?CC\\!39L8&FI$\"'$eo(Fjx7$$\"35777Fb5P^FI$\"'%zn(Fjx7$$\"3& yyy.U)oW^FI$\"'y#f(Fjx7$$\"3jjjj88F_^FI$\"'>muFjx7$$\"3vvvv?H)*f^FI$\" '7MtFjx7$$\"3!zyyy_%pn^FI$\"'nDsFjx7$$\"3&RRR9L]:<&FI$\"'\"e=(Fjx7$$\" 3++++NhSv^FI$\"'HdrFjx7$$\"3011cQ>Ez^FI$\"'#39(Fjx7$$\"37777Ux6$=&FI$ \"'kOrFjx7$$\"3DFFFxYH(>&FI$\"'c@sFjx7$$\"3UUUU7;Z6_FI$\"'3HuFjx7$$\"3 ?@@@mPeE_FI$\"'Y3xFjx7$$\"3++++?fpT_FI$\"'LgzFjx7$$\"3baaazW>\\_FI$\"' w^!)Fjx7$$\"35444RIpc_FI$\"'O7\")Fjx7$$\"3ljjj)f\">k_FI$\"'vQ\")Fjx7$$ \"3====e,pr_FI$\"'@I\")Fjx7$$\"3&RRRRTKxG&FI$\"'N2!)Fjx7$$\"3pppppYx.` FI$\"'#[z(Fjx7$$\"3XXXXl7$zJ&FI$\"'25wFjx7$$\"3@@@@hy3K`FI$\"'F3vFjx7$ $\"3SRRR/8QVM&F I$\"'3QvFjx7$$\"3&RRRRj@%[`FI$\"'4xvFjx7$$\"3IIII?&)ec`FI$\"'/*p(Fjx7$ $\"3mmmm1avk`FI$\"'WsyFjx7$$\"3DFFFx`\\z`FI$\"'(yC)Fjx7$$\"3)yyyyMNUR& FI$\"'j!\\)Fjx7$$\"3NLLLy(>)3aFI$\"'!fO)Fjx7$$\"3zyyy3USBaFI$\"'VQ\")F jx7$$\"3III!GoX7V&FI$\"'8_!)Fjx7$$\"3!===o:(3RaFI$\"'.7!)Fjx7$$\"3bdd# Q*y+VaFI$\"'+6!)Fjx7$$\"3ILL$3jGpW&FI$\"'fA!)Fjx7$$\"3544%yO\\3X&FI$\" 'DY!)Fjx7$$\"3&[[[[5qZX&FI$\"'7\"3)Fjx7$$\"3ljjj$\\;0Z&FI$\"'D3$)Fjx7$ $\"3UUUU#)GE'[&FI$\"'b(f)Fjx7$$\"3qpppk(*e+bFI$\"'!f#))Fjx7$$\"3(ppppk ;\\^&FI$\"'Gd*)Fjx7$$\"3vvvD.R_AbFI$\"'6w*)Fjx7$$\"3baaaf68IbFI$\"'pe* )Fjx7$$\"3NLL$eTQx`&FI$\"'73*)Fjx7$$\"37777scMXbFI$\"'_I))Fjx7$$\"3SRR R\\N>gbFI$\"'FO')Fjx7$$\"3mmmmE9/vbFI$\"'%)e%)Fjx7$$\"3!==o0Cl!zbFI$\" '*fU)Fjx7$$\"3&pppW0*3$e&FI$\"'-.%)Fjx7$$\"3577PoG6(e&FI$\"'\\\"R)Fjx7 $$\"3DFFF#oO6f&FI$\"'p#R)Fjx7$$\"3bdd25V=*f&FI$\"'+P%)Fjx7$$\"3)yyyy$> B2cFI$\"'?R&)Fjx7$$\"3&RRR*3)e6i&FI$\"'nK))Fjx7$$\"3++++!o&3NcFI$\"'up \"*Fjx7$$\"3?==VfX3RcFI$\"'JV#*Fjx7$$\"3NOO')QM3VcFI$\"':#H*Fjx7$$\"3] aaH=B3ZcFI$\"'X-$*Fjx7$$\"3qsss(>\"3^cFI$\"'7$G*Fjx7$$\"3544fc*y!fcFI$ \"'W&=*Fjx7$$\"3XXXX:n2ncFI$\"'5f!*Fjx7$$\"3?CCCH]fucFI$\"'g_*)Fjx7$$ \"3+...VL6#o&FI$\"'n!)))Fjx7$$\"3!===olJ'*o&FI$\"'la))Fjx7$$\"3ggggq* \\rp&FI$\"'Xx))Fjx7$$\"3vvvvg8/7dFI$\"'L[!*Fjx7$$\"3\"4444vKps&FI$\"'7 ?$*Fjx7$$\"3DFFF()f$=u&FI$\"'C&f*Fjx7$$\"3jjjjB#Rnv&FI$\"'w&y*Fjx7$$\" 3+++]-%RVw&FI$\"'`J)*Fjx7$$\"3NOOO\"eR>x&FI$\"']Q)*Fjx7$$\"3]aazq'Rdx& FI$\"'mF)*Fjx7$$\"3qssAg(R&zdFI$\"''y!)*Fjx7$$\"3!44f'\\)RLy&FI$\"'wz( *Fjx7$$\"34444R*Rry&FI$\"'IW(*Fjx7$$\"3ljjjj?D.eFI$\"'wR&*Fjx7$$\"3=== =)=k$>eFI$\"'hN$*Fjx7$$\"3baaH)\\dI#eFI$\"'a-$*Fjx7$$\"3!444%33vEeFI$ \"'#yF*Fjx7$$\"3IFF_=TWIeFI$\"'\"GE*Fjx7$$\"3ljjjGu8MeFI$\"'ne#*Fjx7$$ \"3+++vQ2$y$eFI$\"'Pm#*Fjx7$$\"3NOO')[S_TeFI$\"'d'G*Fjx7$$\"3qss(*et@X eFI$\"'k>$*Fjx7$$\"34444p1\"*[eFI$\"'fl$*Fjx7$$\"3SRRRaP\\jeFI$\"'_c'* Fjx7$$\"3ppppRo2yeFI$\"(a8+\"Fjx7$$\"3DCCC4T(>)eFI$\"(a'35Fjx7$$\"3!)y yyy8(e)eFI$\"(>N,\"Fjx7$$\"3NLLL['o(*)eFI$\"('p95Fjx7$$\"3!zyyy\"fm$*e FI$\"(*z75Fjx7$$\"3+(pppXg9!fFI$\"(CJ+\"Fjx7$$\"31111'*\\D4fFI$\"'q1** Fjx7$$\"3:777nD.e(*Fjx7$$\"35444WpKafFI$\"'* 3&**Fjx7$$\"3)yyyyg)GofFI$\"(_H-\"Fjx7$$\"\"'Fgx$\"(tD2\"Fjx-Fev6&FgvF (F(Fdw-F$6$7fu7$Fex$\"'#[N#Fjx7$Fay$\"'A2CFjx7$Fez$\"')RX#Fjx7$Fjz$\"' 0`CFjx7$F_[l$\"'8_CFjx7$Fc\\l$\"'?]CFjx7$F]]l$\"'()[CFjx7$Fg]l$\"'\") \\CFjx7$F[_l$\"'*fX#Fjx7$Fe_l$\"'\"RZ#Fjx7$Fi`l$\"'J:DFjx7$Fcal$\"'#ff #Fjx7$Fhal$\"'gDEFjx7$F]bl$\"'!)fEFjx7$Fgbl$\"'ftEFjx7$Facl$\"'=tEFjx7 $Ffcl$\"'ZsEFjx7$F[dl$\"'yrEFjx7$Fcfl$\"'RqEFjx7$F]gl$\"'vpEFjx7$Fggl$ \"'^rEFjx7$F[il$\"'8yEFjx7$Feil$\"'D*p#Fjx7$Fijl$\"'qPFFjx7$Fc[m$\"'GB GFjx7$Fh[m$\"'k\")GFjx7$F]\\m$\"'`YHFjx7$Fb\\m$\"'/YHFjx7$Fg\\m$\"'eXH Fjx7$Fa]m$\"'yWHFjx7$F[^m$\"'QWHFjx7$F`^m$\"'IXHFjx7$Fj^m$\"';]HFjx7$F h`m$\"'0lHFjx7$F]am$\"'?%*HFjx7$F[cm$\"''f0$Fjx7$Fecm$\"'fuJFjx7$Fjcm$ \"'UiKFjx7$F_dm$\"'JwLFjx7$$\"3===VHg*>)QFI$\"'U3MFjx7$$\"3tssAv9o&)QF I$\"'<6MFjx7$$\"3GFF-@pO*)QFI$\"';6MFjx7$Fddm$\"':6MFjx7$$\"3\"444%eKU +RFI$\"'76MFjx7$Fidm$\"'56MFjx7$Fcem$\"'46MFjx7$F]fmFcgr7$F[hm$\"'V6MF jx7$Fehm$\"'+8MFjx7$F_im$\"'eO%=sa%FI$\"',rdFjx7$$\"3+++vo\"=#\\XFI$\"'<$z&Fjx7$$\"3==oI,z@^X FI$\"'5)z&Fjx7$$\"3OOO'Qj6;aFI$\"'F+&)Fjx7$Fghp$\"':.&)Fjx7$Fejp$\"'v:&)Fjx7 $F_[q$\"'sH&)Fjx7$Fi[q$\"''pa)Fjx7$Fc\\q$\"'kg&)Fjx7$F]]q$\"'B!e)Fjx7$ Fb]q$\"'W3')Fjx7$Fg]q$\"';]')Fjx7$F[_q$\"'(zr)Fjx7$Fe_q$\"'$)>))Fjx7$F _`q$\"'N@\"*Fjx7$Fi`q$\"'J\\#*Fjx7$Fcaq$\"';0$*Fjx7$Fhaq$\"';4$*Fjx7$F ]bq$\"'>8$*Fjx7$Fgbq$\"'\"3K*Fjx7$Facq$\"'aG$*Fjx7$F[dq$\"'lW$*Fjx7$Fe dq$\"'kk$*Fjx7$F_eq$\"'')y$*Fjx7$Fcfq$\"'e)R*Fjx7$Fhfq$\"'OH%*Fjx7$F]g q$\"'Fw%*Fjx7$Fahq$\"'\"3a*Fjx7$Feiq$\"'FN'*Fjx7$F_jq$\"'%)f**Fjx7$Fij q$\"(\"445Fjx7$Fc[r$\"(6],\"Fjx7$Fh[r$\"()\\:5Fjx7$F]\\r$\"(')f,\"Fjx7 $Fg\\r$\"(rp,\"Fjx7$Fa]r$\"(nz,\"Fjx7$F[^r$\"(Q)>5Fjx7$F`^r$\"(`C-\"Fj x-Fev6&FgvFdwF(Fdw-%+AXESLABELSG6%Q!6\"Fb`t-%%FONTG6#%(DEFAULTG-%%VIEW G6$;FexF`^r;$!\"#!#7$\"\"\"!#6" 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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 2" }{TEXT 289 66 " .. The accuracy of another adaptive order 4-5 Runge-Ku tta method " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this example we construct a continuous numeric al solution to the differential equation" }}{PARA 257 "" 0 "" {TEXT -1 1 " " }{XPPEDIT 18 0 "dy/dx = 5*cos*4*x/(1+y);" "6#/*&%#dyG\"\"\"%# dxG!\"\"*,\"\"&F&%$cosGF&\"\"%F&%\"xGF&,&F&F&%\"yGF&F(" }{TEXT -1 2 ", " }}{PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial condition " } {XPPEDIT 18 0 "y(0) = 1;" "6#/-%\"yG6#\"\"!\"\"\"" }{TEXT -1 2 ". " }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "Maple ca n find an analytical solution although it has an awkward form which re quires that an equation be solved for each evaluation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 147 "de := \+ diff(y(x),x)=5*cos(4*x)/(1+y(x));\nic := y(0)=1;\ndsolve(\{de,ic\},y(x ));\ng := unapply(rhs(%),x):\nplot(g(x),x=0..2.5,0..1.6,labels=[`x`,`y (x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#% \"xGF,,$*(\"\"&\"\"\"-%$cosG6#,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#%\"xG,&\"\"\"!\"\"*&#F)\"\"#F)*$,& \"#;F)*&\"#5F)-%$sinG6#,$*&\"\"%F)F'F)F)F)F)F,F)F)" }}{PARA 13 "" 1 " " {GLPLOT2D 500 239 239 {PLOTDATA 2 "6%-%'CURVESG6$7ap7$$\"\"!F)$\"\" \"F)7$$\"3ALL$3FWYs#!#>$\"336Mv`O'o1\"!#<7$$\"3WmmmT&)G\\aF/$\"3()4_(Q +u38\"F27$$\"3O**\\7`p)*>yF/$\"3aL5o&puQ=\"F27$$\"3PL$ek`o!>5!#=$\"3!> \\5.msSB\"F27$$\"3omm\"z>)G_:F@$\"3Zvcz7jZN8F27$$\"3-nmT&QU!*3#F@$\"3_ T3TY6c>9F27$$\"3HL$eRZXKi#F@$\"3;U^5RB[$[\"F27$$\"3xm;z>,_=JF@$\"37Qk) 3=nR_\"F27$$\"3aL$eRAM\\P$F@$\"3+.6\\+kdP:F27$$\"3v**\\7G$[8j$F@$\"39y mrhJ3Y:F27$$\"3+n;zW-%Rw$F@$\"3;?q^WrY[:F27$$\"3qL$e9;Kl*QF@$\"3#eJM%o LZ\\:F27$$\"3S+]7yS7HSF@$\"3SkwUN15\\:F27$$\"35n;z%*frhTF@$\"3)R.%>*Q \\ta\"F27$$\"3QL$3-Q\\gU%F@$\"3Fhs$eda(R:F27$$\"3A+]ilFQ!p%F@$\"3vZ$*4 5qsE:F27$$\"3]n\"HK9#Gi\\F@$\"3:Jj:_Ts2:F27$$\"3@ML$3_\"=M_F@$\"3%)=7u Nj8$[\"F27$$\"3HnmTg(fJr&F@$\"3v**H*e!\\kE9F27$$\"3k++]7eP_iF@$\"3Dcc9 ps)RM\"F27$$\"3Q++]Pf!Qz'F@$\"3'*HDaPFZU7F27$$\"3@++](=ubJ(F@$\"3r3xWQ !z$H6F27$$\"3AMe9m>[_vF@$\"3]*\\!=L'HQ2\"F27$$\"37n;zW(*Q*y(F@$\"3FOX& >_\"3;5F27$$\"3[+D\"y+'4r!)F@$\"3C6*=t.V.X*F@7$$\"3#QLL3F-GN)F@$\"3WDG Y1LE?()F@7$$\"3aML3FWW\"f)F@$\"3'y)zq9%[>4)F@7$$\"3=MLL$e'3I))F@$\"3Q# z+%[W(*fuF@7$$\"3km\"HK9%o2\"*F@$\"3*Ri77!fyFnF@7$$\"3?+]7.62s>6F2$\"35T1[73P@DF@7$$\"3cL$ek`1l9\"F2$\"3F \\Z()GfbGBF@7$$\"3S3x16a!)e6F2$\"3%4DA#>SyxAF@7$$\"3Y$3xcG/6<\"F2$\"3S cqF#fS9D#F@7$$\"3+r<)Hs`s<\"F2$\"3;w!o)4o]ZAF@7$$\"3_ekGgJS$=\"F2$\"3/ UjCtqu\\AF@7$$\"3%e9\"f(f_&*=\"F2$\"3U(o:Ikc\"eAF@7$$\"3OLe*[.-d>\"F2$ \"3cVt$pvgk#F@7$$\"3zm\"z%*f%)QI\"F2$\"35pWRO%*)HX$F@7$$\"3/+voza'=N\"F 2$\"3:$3*o3X9AWF@7$$\"3M$eRA\"exx8F2$\"3p)yCt#)\\(>]F@7$$\"3(om\"zWho. 9F2$\"35j-*)o!oVl&F@7$$\"3WLek`SXI9F2$\"3[4ga)3!\\PjF@7$$\"3-++]i>Ad9F 2$\"3puf,WR'z.(F@7$$\"3;+D1R\"4M[\"F2$\"3pB[oft!3t(F@7$$\"32+]i:jf4:F2 $\"3j-&R#)\\nIU)F@7$$\"36](oavL\\`\"F2$\"3;g%4-\\/c3*F@7$$\"39+DJ&>r-c \"F2$\"3.il.8k>N(*F@7$$\"31]PM-TS)e\"F2$\"36[!3$z(4N/\"F27$$\"3++]P4q` ;;F2$\"3lOD-=Pl56F27$$\"3emTgxc\"=k\"F2$\"3W\\oEN^5o6F27$$\"3;LL$eM%4n ;F2$\"3!y;&\\UKYA7F27$$\"37++v$4v5s\"F2$\"3Au#*R$>!yE8F27$$\"3cm\"zWn* )*p+p:plx09F27$$\"3H++DJiYB=F2$\"3k7$f[jbMZ\"F27$$\"3CLek.Nyt= F2$\"3!)e*f)fc3=:F27$$\"3rmTgF:3+>F2$\"3@n4)4msP`\"F27$$\"3=+Dc^&zj#>F 2$\"3=qEA<16W:F27$$\"3W3F>9^BR>F2$\"31YGv$*>?Z:F27$$\"3q;H#on!4_>F2$\" 3?$)\\$fi***[:F27$$\"3)\\7`%Ri%\\'>F2$\"3qf!o1],&\\:F27$$\"3CLL3-=!y(> F2$\"3Q\"oOj02([:F27$$\"3W;zWn*=Z+#F2$\"3#>)opD1&Ga\"F27$$\"3))*\\7G8O ;.#F2$\"3kOaaabMJ:F27$$\"3S$eRAcgv0#F2$\"3A1el5x(\\^\"F27$$\"3!pmm;*\\ [$3#F2$\"3CbX)zi)\\$\\\"F27$$\"3*pmT&Qz]O@F2$\"3k&f]x<,TV\"F27$$\"3iLe kG=4*=#F2$\"3Up)3$Qbqb8F27$$\"3F++]i4TPAF2$\"3'4#\\(fPgzE\"F27$$\"3qL$ 3F9!z#H#F2$\"39WtK!f36:\"F27$$\"3L+v=UgbKUBF2$\"3$e`46GoV.\"F27$$\"3]$e*)fbF(oBF2$\"3a%zAz78Vo*F@7$$\"3/+ DJqJ8&R#F2$\"3kN1^?4v0!*F@7$$\"3<++]7nS?CF2$\"31^ot0TqV$)F@7$$\"3G+voa -oXCF2$\"3!QiD/x0_n(F@7$$\"3O]PMF,%GZ#F2$\"3#p;s-PGq&pF@7$$\"3++++++++ DF2$\"3g\"=#y(R9zC'F@-%'COLOURG6&%$RGBG$\"#5!\"\"F(F(-%+AXESLABELSG6$% \"xG%%y(x)G-%%VIEWG6$;F($\"#DFcfl;F($\"#;Fcfl" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 106 "We start by constructing a dis crete solution and make a numerical comparison with the analytical sol ution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 369 "de := diff(y(x),x )=5*cos(4*x)/(1+y(x));\nic := y(0)=1;\npts := desolveRK(\{de,ic\},y(x) ,x=0..2,method=rk45b,output=points):\ncat(`The discrete solution has ` ,convert(nops(pts),string),` points`);\np1 := plot(pts,style=line,colo r=grey):\np2 := plot([pts$2],style=point,symbol=[diamond,cross],color= [black,red]):\nplots[display]([p1,p2],view=[0..2.5,0..1.6],labels=[`x` ,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6 #%\"xGF,,$*(\"\"&\"\"\"-%$cosG6#,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%DThe~discrete~solution~has~83~pointsG" }} {PARA 13 "" 1 "" {GLPLOT2D 677 275 275 {PLOTDATA 2 "6'-%'CURVESG6%7_p7 $$\"\"!F)$\"\"\"F)7$$\"3-+++++++5!#>$\"34+++*3R[-\"!#<7$$\"3G+++8!\\9W $F/$\"35+++D2+%3\"F27$$\"3o******GaMUfF/$\"3#*******eX6U6F27$$\"3;++++ A]Y&)F/$\"31+++3#o&*>\"F27$$\"3,+++1\"ei7\"!#=$\"3#******zp!yb7F27$$\" 3.+++?))459FE$\"31+++T*)358F27$$\"31+++GuM2?FE$\"3(******4/T(49F27$$\"33+++.U,[BFE$\"31+++_[5`9F27$$\"33+++ .qe&p#FE$\"35+++TVa!\\\"F27$$\"3'******>eRd1$FE$\"3/+++tx`?:F27$$\"3;+ ++-8#[Y$FE$\"31+++^<9T:F27$$\"3*)*****>NKp!RFE$\"3%******f(R\\\\:F27$$ \"3A+++MTLXWFE$\"3%******HD()*Q:F27$$\"3D+++!fn'R[FE$\"3!******p^\"*p^ \"F27$$\"3\")*****>(Hd;_FE$\"3++++ua*[[\"F27$$\"3q******G;UqbFE$\"3+++ +s'*>X9F27$$\"3c******f*)RSfFE$\"3++++A`=%R\"F27$$\"3[+++9Jx'G'FE$\"3+ +++pt1Q8F27$$\"3_+++pWO7mFE$\"31+++91Uy7F27$$\"3r*****f*Q6?pFE$\"3++++ B5P;7F27$$\"3\")******4=87sFE$\"3)******>hjG:\"F27$$\"3u*****p2f+\\(FE $\"3-+++ZIp)3\"F27$$\"3A+++=2FbxFE$\"32+++)*4_C5F27$$\"3[*******R*)*3! )FE$\"3>+++^\\!*3'*FE7$$\"3#*******R&eBD)FE$\"3;+++)[yB)*)FE7$$\"3e*** **>x)\\'[)FE$\"3Y+++q8-p$)FE7$$\"3`+++CBc7()FE$\"3G+++x(=8x(FE7$$\"3i* ****\\V*zJ*)FE$\"3%)******ol(3>(FE7$$\"3')******3%fc9*FE$\"3_*****4[v$ GmFE7$$\"3a+++K`(fN*FE$\"3[+++oFP$3'FE7$$\"3%******f&yOl&*FE$\"3))**** *f*Qr`bFE7$$\"3g*****fJ]$y(*FE$\"37+++([zO.&FE7$$\"35+++`(y0+\"F2$\"3% )*****R_:f]%FE7$$\"3++++N_*p,\"F2$\"3;+++[u%p9%FE7$$\"35+++n+8L5F2$\"3 &)*****>\"*Qa\"QFE7$$\"3)******4AB#[5F2$\"3t*****z]2r_$FE7$$\"3!****** *e))[i5F2$\"39+++?a?wKFE7$$\"3-+++$GMh2\"F2$\"3/+++#Q/y0$FE7$$\"3)**** **4%=t!4\"F2$\"3y*****>(4a\\GFE7$$\"3#*******f&QZ5\"F2$\"3w*****fk(>wE FE7$$\"3%******\\1S$=6F2$\"30++++\"pU`#FE7$$\"3/+++#\\f<8\"F2$\"3')*** **4NM5U#FE7$$\"3!******HvF_9\"F2$\"39+++sNR!f6F2$ \"3-++++S0xAFE7$$\"3/+++<0pt6F2$\"3!******f9M!\\AFE7$$\"3/+++#4M0>\"F2 $\"3#******Hyo+E#FE7$$\"3-+++b'>N?\"F2$\"3&******HMg+I#FE7$$\"31+++MPh ;7F2$\"3')*****pRZxO#FE7$$\"32+++6gtI7F2$\"3'******RP:3Z#FE7$$\"3***** **R31UC\"F2$\"3E+++8'>sf#FE7$$\"33+++VKUd7F2$\"3!******H*QwYFFE7$$\"33 +++r5lq7F2$\"3:+++7ZV?HFE7$$\"3/+++3_3%G\"F2$\"3?+++FP#*>JFE7$$\"3%*** ****p^!zH\"F2$\"3y*****z!yvZLFE7$$\"3%******>,0BJ\"F2$\"3++++ZJf2OFE7$ $\"36+++Cq_F8F2$\"3!)*****48V[!RFE7$$\"31+++xD#RM\"F2$\"3=+++fT7[UFE7$ $\"3++++rE6i8F2$\"37+++f6M`YFE7$$\"3!******42!o$Q\"F2$\"3S+++Hp]h^FE7$ $\"3!******4f:NS\"F2$\"3O+++AN4]cFE7$$\"31+++W)HkU\"F2$\"3a******fOVLi FE7$$\"3/+++xEpZ9F2$\"3[+++(yMsy'FE7$$\"37+++*pM&o9F2$\"3j*****z()[oL( FE7$$\"3/+++n)o%*[\"F2$\"3I+++$)>K\"*yFE7$$\"3(******\\;W2^\"F2$\"3M++ +rOG`%)FE7$$\"3'******z`BD`\"F2$\"3Y+++SF0B!*FE7$$\"3/+++4;$\\b\"F2$\" 3Y*****>-T'*f*FE7$$\"3++++aO2y:F2$\"30+++o(3\"=5F27$$\"3+++++^/-;F2$\" 3++++RsXw5F27$$\"3(******f@Ppi\"F2$\"30+++aLkM6F27$$\"35+++K7%Gl\"F2$ \"3-+++&o8A>\"F27$$\"33+++0?&)z;F2$\"3)******R?@'[7F27$$\"32+++I?23*>io1K>\">F2$\"34+++Ao4R:F27$$\"3++++gmWb>F2$\"3!*******ocD \\:F27$$\"\"#F)$\"3)******z&oGW:F2-%'COLOURG6&%$RGBG$\")=THv!\")FgelFg el-%&STYLEG6#%%LINEG-F$6&F&-Fdel6&FfelF)F)F)-%'SYMBOLG6#%(DIAMONDG-F[f l6#%&POINTG-F$6&F&-Fdel6&Ffel$\"*++++\"FielF(F(-Fcfl6#%&CROSSGFffl-%+A XESLABELSG6%%\"xG%%y(x)G-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F($\"#D!\"\";F( $\"#;Fahl" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Cu rve 1" "Curve 2" "Curve 3" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continuous solution can be constructed over t he interval from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 " \+ to " }{XPPEDIT 18 0 "x = 2;" "6#/%\"xG\"\"#" }{TEXT -1 21 " using the \+ procedure " }{TEXT 0 9 "desolveRK" }{TEXT -1 20 " with the options '' " }{TEXT 262 12 "method=rk45b" }{TEXT -1 9 "'' and ''" }{TEXT 262 15 " output=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 246 "de := diff(y(x),x)=5*cos(4* x)/(1+y(x));\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},y(x),x=0..4,me thod=rk45b,output=rkinterp);\nplot('gn1'(x),x=0..2.5,0..1.6,labels=[`x `,`y(x)`],\n color=COLOR(RGB,.9,0,.4),thickness=2,labels =[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-% \"yG6#%\"xGF,,$*(\"\"&\"\"\"-%$cosG6#,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\" \"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }} {PARA 13 "" 1 "" {GLPLOT2D 470 275 275 {PLOTDATA 2 "6'-%'CURVESG6#7ap7 $$\"\"!F)$\"\"\"F)7$$\"+qUkCF!#6$\"+aO'o1\"!\"*7$$\"+T&)G\\aF/$\"+/S(3 8\"F27$$\"+]p)*>yF/$\"+'puQ=\"F27$$\"+O&o!>5!#5$\"+gE2M7F27$$\"+)>)G_: F@$\"+8jZN8F27$$\"+&QU!*3#F@$\"+Y6c>9F27$$\"+uaCBEF@$\"+RB[$[\"F27$$\" +?,_=JF@$\"+\"=nR_\"F27$$\"+CU$\\P$F@$\"++kdP:F27$$\"+G$[8j$F@$\"+iJ3Y :F27$$\"+X-%Rw$F@$\"+XrY[:F27$$\"+i@`'*QF@$\"+oLZ\\:F27$$\"+yS7HSF@$\" +N15\\:F27$$\"+&*frhTF@$\"+*Q\\ta\"F27$$\"+!Q\\gU%F@$\"+wXvR:F27$$\"+l FQ!p%F@$\"+5qsE:F27$$\"+U@Gi\\F@$\"+_Ts2:F27$$\"+?:=M_F@$\"+Oj8$[\"F27 $$\"+g(fJr&F@$\"+1\\kE9F27$$\"+7eP_iF@$\"+ps)RM\"F27$$\"+Pf!Qz'F@$\"+Q FZU7F27$$\"+(=ubJ(F@$\"+R!z$H6F27$$\"+l>[_vF@$\"+M'HQ2\"F27$$\"+W(*Q*y (F@$\"+A:3;5F27$$\"+0g4r!)F@$\"+XIM]%*F@7$$\"+qA!GN)F@$\"+4LE?()F@7$$ \"+DWW\"f)F@$\"+@%[>4)F@7$$\"+$e'3I))F@$\"+]W(*fuF@7$$\"+XTo2\"*F@$\"+ (*eyFnF@7$$\"+.6F2$\"+:3P@DF@7$$\"+Ol]Y6F2$\"+KfbGBF@7$$\"+6a!)e6F2$\"+?SyxA F@7$$\"+'G/6<\"F2$\"+$fS9D#F@7$$\"+BPDx6F2$\"+6o]ZAF@7$$\"+gJS$=\"F2$ \"+uqu\\AF@7$$\"+)f_&*=\"F2$\"+Xm:eAF@7$$\"+N?q&>\"F2$\"+exrsAF@7$$\"+ ISBA7F2$\"+)pz]S#F@7$$\"+Egw[7F2$\"+z*>gk#F@7$$\"+*f%)QI\"F2$\"+H%*)HX $F@7$$\"+![l=N\"F2$\"+;X9AWF@7$$\"+7exx8F2$\"+A)\\(>]F@7$$\"+Xho.9F2$ \"+v!oVl&F@7$$\"+aSXI9F2$\"+)4!\\PjF@7$$\"+i>Ad9F2$\"+JR'z.(F@7$$\"+R \"4M[\"F2$\"+ft!3t(F@7$$\"+;jf4:F2$\"+4v1B%)F@7$$\"+cP$\\`\"F2$\"+0Xg& 3*F@7$$\"+&>r-c\"F2$\"+1k>N(*F@7$$\"+-TS)e\"F2$\"+z(4N/\"F27$$\"+4q`;; F2$\"+!yE8F27$$\"+u'*)*pF2$\"+hExL:F27$$\"+^&zj#>F2$\"+<16 W:F27$$\"+9^BR>F2$\"+%*>?Z:F27$$\"+w14_>F2$\"+E'***[:F27$$\"+Ri%\\'>F2 $\"+,:]\\:F27$$\"+-=!y(>F2$\"+cqq[:F27$$\"+o*=Z+#F2$\"+E1&Ga\"F27$$\"+ LhjJ?F2$\"+bbMJ:F27$$\"+i0cd?F2$\"+6x(\\^\"F27$$\"+#*\\[$3#F2$\"+G')\\ $\\\"F27$$\"+Qz]O@F2$\"+z65M9F27$$\"+H=4*=#F2$\"+Qbqb8F27$$\"+i4TPAF2$ \"+x.'zE\"F27$$\"+V,z#H#F2$\"+!f36:\"F27$$\"+UgbKUBF2$\"+!GoV.\"F27$$\"+cvsoBF2$\"+HJJ%o*F@7$$\"+qJ8&R#F2$\"+I4v0 !*F@7$$\"+7nS?CF2$\"+?TqV$)F@7$$\"+b-oXCF2$\"+jd?vwF@7$$\"+G,%GZ#F2$\" +a$Gq&pF@7$$\"#D!\"\"$\"+*R9zC'F@-%&COLORG6&%$RGBG$\"\"*F[flF($\"\"%F[ fl-%*THICKNESSG6#\"\"#-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F(Fiel;F( $\"#;F[fl" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Cu rve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 139 "The first error graph is plotted using standard 10 digit arithmet ic for the evaluation of the procedure which gives the numerical solut ion." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "plot('gn1'(x)-g(x),x=0..2.5,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7jfl7$$\"\"!F )F(7$$\"+T&)G\\a!#6F(7$$\"+O&o!>5!#5F(7$$\"+)>)G_:F1F(7$$\"+#Hl1#=F1F( 7$$\"+&QU!*3#F1F(7$$\"+eJfAAF1F(7$$\"+IR9cBF1F(7$$\"+wx$GP#F1F(7$$\"+B ;`*Q#F1F(7$$\"+qaA1CF1F(7$$\"+;$>HU#F1$!\"\"!\"*7$$\"+iJhRCF1F(7$$\"+4 qIcCF1F(7$$\"+c3+tCF1F(7$$\"+-Zp*[#F1F(7$$\"+&R#3BDF1F(7$$\"+)3qkb#F1F (7$$\"+MR;tDF1FM7$$\"+\"yd)*e#F1$\"\"\"FO7$$\"+G;b1EF1Fbo7$$\"+uaCBEF1 FM7$$\"+2GsQEF1FM7$$\"+S,?aEF1F(7$$\"+sunpEF1F(7$$\"+0[:&o#F1F(7$$\"+Q @j+FF1Fbo7$$\"+q%4hr#F1F(7$$\"+.oeJFF1FM7$$\"+OT1ZFF1Fbo7$$\"+o9aiFF1F bo7$$\"+,)=!yFF1F(7$$\"+Mh\\$z#F1FM7$$\"+mM(*3GF1F(7$$\"+*z]W#GF1F(7$$ \"+K\"G*RGF1Fbo7$$\"+kaSbGF1F(7$$\"+(z#)3(GF1FM7$$\"+I,O')GF1Fbo7$$\"+ iu$=!HF1F(7$$\"+&z9t\"HF1F(7$$\"+G@zKHF1Fbo7$$\"+g%p#[HF1F(7$$\"+$zYP' HF1F(7$$\"+ETAzHF1F(7$$\"+e9q%*HF1F(7$$\"+*y5m0$F1F(7$$\"+?,_=JF1F(7$$ \"+CU$\\P$F1F(7$$\"+G$[8j$F1F(7$$\"+&*frhTF1F(7$$\"+lFQ!p%F1F(7$$\"+?: =M_F1F(7$$\"+g(fJr&F1F(7$$\"+7eP_iF1F(7$$\"+v34BlF1F(7$$\"+Pf!Qz'F1F(7 $$\"++![U#pF1F(7$$\"+g+paqF1F(7$$\"+!46*>rF1F(7$$\"+D@8&=(F1F(7$$\"+!Q P9?(F1F(7$$\"+SEuuF1F(7$$\"+v!GSV(F1FM7$$\"+5[$)[uF1F(7$$\"+]:kjuF1F(7$$ \"+&G[%yuF1F(7$$\"+?]D$\\(F1Fbo7$$\"+b<13vF1FM7$$\"+!\\oG_(F1F(7$$\"+I _nPvF1F(7$$\"+l>[_vF1Fbo7$$\"++()GnvF1Fbo7$$\"+Sa4#e(F1Fbo7$$\"+v@!pf( F1F(7$$\"+5*3)F1F(7$$\"+S\"\\>@)F1FM7$$\"+!y b&H#)F1F(7$$\"+?C;Z#)F1F(7$$\"+g!pZE)F1F(7$$\"+0dP#G)F1F(7$$\"+]B)**H) F1F(7$$\"+!**)e<$)F1Fbo7$$\"+Ic>N$)F1Fbo7$$\"+qA!GN)F1Fbo7$$\"+0urn$)F 1F(7$$\"+SDj#Q)F1F(7$$\"+vwa(R)F1F(7$$\"+5GY7%)F1F(7$$\"+!3$HU%)F1F(7$ $\"+]L7s%)F1F(7$$\"+!*QyJ&)F1F(7$$\"+DWW\"f)F1F(7$$\"+&pu7i)F1F(7$$\"+ l\\5^')F1F(7$$\"++,-m')F1F(7$$\"+N_$4o)F1F(7$$\"+q.&ep)F1F(7$$\"+0bw5( )F1Fbo7$$\"+S1oD()F1F(7$$\"+vdfS()F1F(7$$\"+54^b()F1F(7$$\"+XgUq()F1Fb o7$$\"+!=T`y)F1F(7$$\"+:jD+))F1FM7$$\"+]9<:))F1Fbo7$$\"+$e'3I))F1F(7$$ \"+XTo2\"*F1F(7$$\"+.\"FOF(7$$\"+Egw[7FOF(7$$\"+*f%)QI \"FOF(7$$\"+![l=N\"FOF(7$$\"+7exx8FOF(7$$\"+Xho.9FOF(7$$\"++,2<9FOF(7$ $\"+aSXI9FOF(7$$\"+[q7K9FOFbo7$$\"+U+!QV\"FOF(7$$\"+OIZN9FOF(7$$\"+Jg9 P9FOFM7$$\"+E!>)Q9FOF(7$$\"+??\\S9FOF(7$$\"+9];U9FOF(7$$\"+3!QQW\"FOF( 7$$\"+-5^X9FOF(7$$\"+'*R=Z9FOFbo7$$\"+!*p&)[9FOFM7$$\"+&)*H0X\"FOF(7$$ \"+!)H?_9FOF(7$$\"+uf(QX\"FOF(7$$\"+o*[bX\"FOF(7$$\"+i>Ad9FOFM7$$\"+g' e)e9FOF(7$$\"+f`\\g9FOF(7$$\"+e?8i9FOF(7$$\"+c(oPY\"FOF(7$$\"+aaSl9FOF bo7$$\"+`@/n9FOFM7$$\"+_)y'o9FOF(7$$\"+]bJq9FOF(7$$\"+WB'oZ\"FOF(7$$\" +R\"4M[\"FOF(7$$\"+GF]'\\\"FOF(7$$\"+;jf4:FOF(7$$\"+cP$\\`\"FOF(7$$\"+ &>r-c\"FOF(7$$\"+-&H?c\"FOF(7$$\"+3yyj:FOF(7$$\"+:hal:FOFbo7$$\"+AWIn: FOFM7$$\"+GF1p:FOF(7$$\"+N5#3d\"FOF(7$$\"+U$zDd\"FOF(7$$\"+[wLu:FOF(7$ $\"+iU&yd\"FOF(7$$\"+v3P\"e\"FOF(7$$\"+#=HJe\"FOF(7$$\"+)[()[e\"FOF(7$ $\"+&zXme\"FOF(7$$\"+-TS)e\"FOFbo7$$\"+4C;!f\"FOF(7$$\"+;2#>f\"FOF(7$$ \"+A!zOf\"FOF(7$$\"+HtV&f\"FOF(7$$\"+UR&*)f\"FOF(7$$\"+c0Z-;FOF(7$$\"+ pr)fg\"FOF(7$$\"+#y.&4;FOF(7$$\"+*3i7h\"FOF(7$$\"+'R?Ih\"FOF(7$$\"+-(y Zh\"FOFbo7$$\"+4q`;;FOFM7$$\"+Ep6=;FOFM7$$\"+Uop>;FOF(7$$\"+fnF@;FOFbo 7$$\"+wm&Gi\"FOF(7$$\"+5l,E;FOF(7$$\"+Wj%Qn\"FOF(7$$\"+Q)Gbn\"FOF(7$$\"+Od@x;FOFbo7$$\"+ME!*y;FOF(7$$ \"+L&*e!o\"FOF(7$$\"+ErL(o\"FOF(7$$\"+?Z3%p\"FOF(7$$\"+2*zvq\"FOF(7$$ \"+%4v5s\"FOF(7$$\"+RPIL=3w\"FOFbo7 $$\"+rnMiLtR=FO FM7$$\"+%zi2%=FOF(7$$\"+4_LU=FOF(7$$\"+Cw!R%=FOF(7$$\"+Q+[X=FOFM7$$\"+ `C0Z=FOF(7$$\"+o[i[=FOF(7$$\"+'=/7'=FOF(7$$\"+/Nyt=FOF(7$$\"+G:3+>FOF( 7$$\"+^&zj#>FOF(7$$\"+w14_>FOF(7$$\"+-=!y(>FOF(7$$\"+[k;\")>FOF(7$$\"+ %4JX)>FOF(7$$\"+FOFbo7$$\"+Sd*y)>FOF(7$$\"+i!y&*)>FOF(7$$\"+&Qg7 *>FOFM7$$\"+3F%H*>FOFbo7$$\"+I]i%*>FOFM7$$\"+`tI'*>FOFbo7$$\"+w'*)z*>F OF(7$$\"+**>n**>FOF(7$$\"+AVN,?FOFM7$$\"+Xm..?FOF(7$$\"+o*=Z+#FOF(7$$ \"+f#[9,#FOF(7$$\"+]v<=?FOF(7$$\"+'>U:-#FOF(7$$\"+Uo!\\-#FOF(7$$\"+l\" *eE?FOF(7$$\"+)[r#G?FOFbo7$$\"+5Q&*H?FOF(7$$\"+LhjJ?FOFbo7$$\"+5kDL?FO F(7$$\"+'ow[.#FOF(7$$\"+jp\\O?FOF(7$$\"+Ss6Q?FOF(7$$\"+%zd8/#FOF(7$$\" +[$)fW?FOF(7$$\"+-*Qy/#FOF(7$$\"+b%z50#FOF(7$$\"+K(*p_?FOF(7$$\"+3+Ka? FOFbo7$$\"+&GSf0#FOF(7$$\"+i0cd?FOFbo7$$\"+R3=f?FOF(7$$\"+;6!31#FOF(7$ $\"+$R@C1#FOF(7$$\"+q;/k?FOF(7$$\"+Z>ml?FOFbo7$$\"+CAGn?FOFbo7$$\"++D! *o?FOF(7$$\"+xF_q?FOF(7$$\"+%)Q+x?FOF(7$$\"+#*\\[$3#FOF(7$$\"+f>9&3#FO F(7$$\"+E*)z'3#FOFbo7$$\"+$*eX)3#FOFM7$$\"+gG6!4#FOF(7$$\"+F)p<4#FOFM7 $$\"+%zEM4#FOF(7$$\"+hP3&4#FOF(7$$\"+G2u'4#FOFbo7$$\"+'foL5#FOFbo7$$\" +lk**4@FOFbo7$$\"+KMl6@FOF(7$$\"++/J8@FOF(7$$\"+nt'\\6#FOF(7$$\"+MVi;@ FOFbo7$$\"+,8G=@FOF(7$$\"+o#Q*>@FOF(7$$\"+N_f@@FOF(7$$\"+-ADB@FOFM7$$ \"+p\"4\\7#FOFbo7$$\"+OhcE@FOF(7$$\"+.JAG@FOFbo7$$\"+q+))H@FOF(7$$\"+P q`J@FOF(7$$\"+/S>L@FOF(7$$\"+r4&[8#FOF(7$$\"+Qz]O@FOFbo7$$\"+%=^\"Q@FO F(7$$\"+JWzR@FOFbo7$$\"+ywVT@FOFbo7$$\"+C43V@FOF(7$$\"+=uOY@FOF(7$$\"+ 6Rl\\@FOF(7$$\"+)*oAc@FOF(7$$\"+%))*zi@FOF(7$$\"+ce%f<#FOF(7$$\"+H=4*= #FOF(7$$\"+'R^K@#FOF(7$$\"+i4TPAFOF(7$$\"+V,z#H#FOF(7$$\"+UgbKUBFOF(7$$\"+$HsRM#FOF(7$$\"+WEiXBFOF(7$$\"+&*HFZBFOF(7$$\"+YL#*[ BFOFbo7$$\"+(pt0N#FOF(7$$\"+[SA_BFOF(7$$\"+)RuQN#FOFM7$$\"+\\Z_bBFOF(7 $$\"+]a#)eBFOF(7$$\"+_h7iBFOF(7$$\"+.lxjBFOF(7$$\"+aoUlBFOF(7$$\"+0s2n BFOF(7$$\"+cvsoBFOFbo7$$\"+2zPqBFOFbo7$$\"+e#G?P#FOF(7$$\"+4'yOP#FOF(7 $$\"+g*G`P#FOF(7$$\"+6$zpP#FOF(7$$\"+i'H'yBFOFbo7$$\"+7+G!Q#FOF(7$$\"+ j.$>Q#FOF(7$$\"+k5B&Q#FOF(7$$\"+m<`)Q#FOF(7$$\"+<@=!R#FOF(7$$\"+oC$=R# FOF(7$$\"+>G[$R#FOF(7$$\"+qJ8&R#FOFbo7$$\"+mFr'R#FOF(7$$\"+jBH)R#FOF(7 $$\"+g>()*R#FOF(7$$\"+c:X,CFOF(7$$\"+_6..CFOFbo7$$\"+[2h/CFOFbo7$$\"+W .>1CFOF(7$$\"+T*pxS#FOF(7$$\"+E$)39CFOF(7$$\"+7nS?CFOF(7$$\"+%[VIV#FOF (7$$\"+b-oXCFOF(7$$\"+G,%GZ#FOF(7$$\"#DFNF(-%'COLOURG6&%$RGBGF(F($\"*+ +++\"!\")-%+AXESLABELSG6$Q\"x6\"Q!F]`p-%%VIEWG6$;F(F`_p%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 136 "The solu tion has been constructed in such a way that up to a point it will pro duce more accurate values when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 65 "eval f[15](plot('gn1'(x)-g(x),x=0..2.5,color=blue,numpoints=100));" }} {PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7bw7 $$\"\"!F)F(7$$\"0IHHHz?k#!#;$\"\"%!#97$$\"0(eee$Q4%\\F-$\"#$\"#$)F07$$\" 0^]]v4?^\"F>$\"$6\"F07$$\"0\\[[t`1w\"F>$\"$N\"F07$$\"0XWWp,y,#F>$\"$#= F07$$\"0tss(\\7uAF>$\"$>#F07$$\"0)zzz\\yPDF>$\"$.$F07$$\"0nmm\"4!Rl#F> $\"$G$F07$$\"0ONN&o,qFF>$\"$R$F07$$\"0mkk*et+HF>$\"$>%F07$$\"0&RRR\\XJ IF>$\"$z%F07$$\"0_^^^mRH$F>$\"$+'F07$$\"0MLL$))eDLF>$\"$#eF07$$\"0;::: 6sN$F>$\"$y&F07$$\"0)pppM$))Q$F>$\"$9'F07$$\"0!)yyyb/U$F>$\"$!pF07$$\" 0WUUU+P[$F>$\"$'oF07$$\"02111Xpa$F>$\"$!oF07$$\"0qo$\\sP/OF>$\"$?)F07$ $\"0KJ\"Q%4=m$F>$\"$U*F07$$\"0%R*oiT#>PF>$\"$N*F07$$\"0dcc\"QnwPF>$\"$ !*)F07$$\"0`___V)\\SF>$\"%V8F07$$\"06555a7G%F>$\"%)z\"F07$$\"0om\"z/b[ VF>$\"%R@F07$$\"0CBt&o%eT%F>$\"%7JF07$$\"0\"Gf/*eUU%F>$\"%9KF07$$\"0Qi =&4nKWF>$\"%!H$F07$$\"0&>8**H3TWF>$\"%NLF07$$\"0_,k/&\\\\WF>$\"%;GF07$ $\"0mS49>jY%F>$\"%4GF07$$\"0!)zaBVJ[%F>$\"%,GF07$$\"03eXU\"z;XF>F_v7$$ \"0POOhR/b%F>$\"%`GF07$$\"0RQ)3qdpYF>$\"%bHF07$$\"0TSSS9()y%F>$\"%]IF0 7$$\"0POOhR,0&F>$\"%UKF07$$\"0\\[[By!*H&F>$\"%?MF07$$\"0322d>)ebF>$\"% KOF07$$\"0+,^Q\"3ycF>$\"%!o$F07$$\"0'\\\\*>Vtz&F>$\"%TPF07$$\"0!)GT>.& HeF>$\"%PPF07$$\"0li()=j;'eF>$\"%kPF07$$\"0]'R$=BQ*eF>$\"%QQF07$$\"0II !yJ)f#fF>$\"%JRF07$$\"0+)HnJI!*fF>$\"%rRF07$$\"0nll:BY0'F>$\"%9SF07$$ \"0\\ZZsk=K'F>$\"%YUF07$$\"0caaH*\\alF>$\"%aVF07$$\"0_]]+^d!oF>$\"%bXF 07$$\"0iggg=`1(F>$\"%cZF07$$\"0QOO'[D>tF>$\"%U\\F07$$\"0,++D^\\c(F>$\" %A^F07$$\"0rpp>bx$yF>$\"%7`F07$$\"0pnnn\")G3)F>$\"%\"\\&F07$$\"0`^^^1Y M)F>$\"%$o&F07$$\"0)oo=\"o$\"%ieF07$$\"0TRRR[5%))F>$\"%ogF07$$\"0 pnn#4,&3*F>$\"%qiF07$$\"0%==o?-S$*F>$\"%PkF07$$\"04222U$*e*F>$\"%:mF07 $$\"0DC\\!efa'*F>$\"%-nF07$$\"0XT\"R&\\)>(*F>$\"%znF07$$\"0+]iSwCv*F>$ \"%nnF07$$\"0geLF.^y*F>$\"%PnF07$$\"0?n/9Ix\")*F>$\"%vnF07$$\"0yvv+d.& )*F>$\"%PoF07$$\"0]'Re0y\"))*F>$\"%!)oF07$$\"0?<#4T?8**F>$\"%?pF07$$\" 0!z.gwiW**F>$\"%fpF07$$\"0ge3@^g(**F>$\"%HpF07$$\"0&*oi)Hw\"***F>$\"%$ )oF07$$\"0$z;wuu+5F0$\"%QoF07$$\"0'*3Pl=B+\"F0$\"%boF07$$\"0+]7$)*)Q+ \"F0$\"%soF07$$\"02Kj=Kq+\"F0$\"%4pF07$$\"0999au,,\"F0$\"%UpF07$$\"0UT \"*eGI-\"F0$\"%iqF07$$\"0pooj#)e.\"F0$\"%#=(F07$$\"088j&yPh5F0$\"%SuF0 7$$\"0_^^J0[3\"F0$\"%gwF07$$\"0onn#el66F0$\"%:zF07$$\"0XWWCrc8\"F0$\"% 3\")F07$$\"0PO')ow7;\"F0$\"%r#)F07$$\"044fO%y&=\"F0$\"%1%)F07$$\"0OgT% f=*=\"F0$\"%s%)F07$$\"0i6C_(e#>\"F0$\"%-&)F07$$\"0)Gm+\"*)f>\"F0$\"%6& )F07$$\"099*y1R*>\"F0Fegl7$$\"0m;a$Q>17F0$\"%,&)F07$$\"0>>>*p*H@\"F0$ \"%!\\)F07$$\"0=ob-)))=7F0$\"%w%)F07$$\"0<<#f!zZA\"F0F`gl7$$\"0;mG4q1B \"F0$\"%\\%)F07$$\"0::l7hlB\"F0$\"%I%)F07$$\"0$GGyQ$*\\7F0$\"%a$)F07$$ \"0^]+j1LE\"F0$\"%c#)F07$$\"0JIID#o(G\"F0$\"%M!)F07$$\"0)yy``M98F0$\"% axF07$$\"00005^tL\"F0$\"%'[(F07$$\"0111'>bj8F0$\"%nrF07$$\"0!)zzpg))Q \"F0$\"%;oF07$$\"0on>>y%4f\"F0$\"%C ]F07$$\"0hg5`-hh\"F0$\"%'*[F07$$\"0dcc,'>T;F0$\"%%y%F07$$\"0wvvD1um\"F 0$\"%%o%F07$$\"0BAs%oa\"p\"F0$\"%4YF07$$\"0KJJ6qir\"F0$\"%TXF07$$\"0kj j`nNu\"F0$\"%$[%F07$$\"0srr6$Go-Yx\"F0$\"%WWF07$ $\"0-,EF@4y\"F0$\"%fWF07$$\"0m:.NSsy\"F0$\"%\\WF07$$\"0JI!G%fNz\"F0$\" %KWF07$$\"0)zHnd)**z\"F0$\"%^WF07$$\"0mll57k!=F0$\"%IWF07$$\"0MLeWQG\" =F0$\"%aWF07$$\"0,,^yk#>=F0$\"%kWF07$$\"0GFx*)y5$=F0$\"%eWF07$$\"0a`., $*G%=F0Fjbm7$$\"0\\)4T(*=\\=F0$\"%/XF07$$\"0WV=Z'[b=F0$\"%9XF07$$\"0R) e-Kyh=F0$\"%!\\%F07$$\"0MLL$*z!o=F0$\"%PXF07$$\"0baHtGV(=F0$\"%OXF07$$ \"0wvD`x0)=F0F`em7$$\"0P'QK>q$)=F0$\"%uXF07$$\"0)p>Kj#o)=F0$\"%==8vI*=F0$\"%[YF07$$\"0OM%osT'*=F0$\"%HYF 07$$\"0_]]Sf(**=F0$\"%7YF07$$\"0geLZI9!>F0$\"%8YF07$$\"0om;a,J!>F0$\"% DYF07$$\"0wu*4Ex/>F0$\"%]YF07$$\"0%GGyOW1>F0Fc_m7$$\"0;::&z78>F0$\"%5Z F07$$\"0[ZZA7)>>F0$\"%#p%F07$$\"098j!3rD>F0$\"%>[F07$$\"0zyyQ4;$>F0$\" %H\\F07$$\"0WW%pz]P>F0$\"%7\\F07$$\"0555b1M%>F0$\"%y[F07$$\"0cbb]H1(>F 0$\"%Z`F07$$\"0LKK7'>&*>F0$\"%)p&F07$$\"0CBt].&>?F0$\"%ukF07$$\"0)G;)y qF-#F0$\"%GlF07$$\"0`-!p!Qg-#F0$\"%elF07$$\"0=U)\\`IH?F0$\"%dlF07$$\"0 #=oIEdK?F0$\"%TlF07$$\"0Z@:\"*Re.#F0$\"%QlF07$$\"07hB>2\"R?F0$\"%%e'F0 7$$\"0w+KZuB/#F0$\"%&o'F07$$\"0TSSvTc/#F0$\"%$z'F07$$\"0[sG+#GZ?F0$\"% OnF07$$\"0c/QVz*3#F0$\"%vqF07$$\"0 vuC(Qw&4#F0$\"%GrF07$$\"0NMMR@67#F0$\"%qtF07$$\"0'\\\\CY\\L@F0$\"%juF0 7$$\"0cbb&y'e9#F0$\"%GvF07$$\"0hg&o0Gf@F0$\"%)z(F07$$\"0ml:G$ps@F0$\"% 0zF07$$\"0MLLt/f>#F0$\"%#=)F07$$\"0YX&HRcAAF0$\"%6%)F07$$\"000b(\\iZAF 0$\"%u')F07$$\"0\"44fRWsAF0$\"%v*)F07$$\"0kjjo#G(H#F0$\"%o#*F07$$\"054 fh;EK#F0$\"%v&*F07$$\"0>=o:q%\\BF0$\"%5**F07$$\"0VUUA#4uBF0$\"&M-\"F07 $$\"0:9kO(R)R#F0$\"&q0\"F07$$\"0%QQj\"zVU#F0$\"&[4\"F07$$\"0`_-S/.X#F0 $\"&_8\"F07$$\"0**)*)RQdtCF0$\"&L<\"F07$$\"#D!\"\"$\"&i@\"F0-%'COLOURG 6&%$RGBGF(F($\"*++++\"!\")-%+AXESLABELSG6$Q\"x6\"Q!F\\in-%%VIEWG6$;F(F \\hn%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 123 "We can investigate the error obtained by applying polynomial i nterpolation compared with using (partial) Runge-Kutta steps." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 190 "de := diff(y(x),x)=5*cos(4*x)/(1+y(x));\nic := y(0)=1;\ngn2 := de solveRK(\{de,ic\},y(x),x=0..2.5,method=rk45b,output=rkstep);\nevalf[15 ](plot('gn2'(x)-g(x),x=0..2.5,color=magenta,numpoints=100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$*(\"\"&\" \"\"-%$cosG6#,$*&\"\"%F0F,F0F0F0,&F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 676 200 200 {PLOTDATA 2 "6&-%'CURVESG6#7hu7$$\"\"!F)F(7$$\"0 IHHHz?k#!#;$\"\"#!#97$$\"0(eee$Q4%\\F-$\"#8F07$$\"0#333eCEvF-$\"#HF07$ $\"0a``.pG,\"!#:$\"#ZF07$$\"0NMMfw=F\"F>$\"#qF07$$\"0^]]v4?^\"F>$\"#)* F07$$\"0\\[[t`1w\"F>$\"$P\"F07$$\"0XWWp,y,#F>$\"$&=F07$$\"0tss(\\7uAF> $\"$,#F07$$\"0)zzz\\yPDF>$\"$`#F07$$\"0ONN&o,qFF>$\"$T$F07$$\"0&RRR\\X JIF>$\"$=%F07$$\"0kjj))oU1$F>$\"$t%F07$$\"0MLL$G3(4$F>$\"$w%F07$$\"0/. .y'*)HJF>$\"$x%F07$$\"0usss5F;$F>F[p7$$\"0877iQ$GKF>F`p7$$\"0_^^^mRH$F >$\"$$[F07$$\"0!)yyyb/U$F>$\"$(eF07$$\"02111Xpa$F>$\"$)pF07$$\"0qo$\\s P/OF>$\"$(pF07$$\"0KJ\"Q%4=m$F>$\"$,(F07$$\"0%R*oiT#>PF>$\"$8(F07$$\"0 dcc\"QnwPF>$\"$`(F07$$\"0cbICm\\%QF>$\"$y)F07$$\"0ba/neK\"RF>$\"%W6F07 $$\"0a`y4^:)RF>Fcs7$$\"0`___V)\\SF>Fcs7$$\"0#>>php2TF>$\"%[6F07$$\"0KJ J\")[b;%F>$\"%k6F07$$\"0sqqX,MA%F>$\"%57F07$$\"06555a7G%F>$\"%F8F07$$ \"0CBt&o%eT%F>$\"%HBF07$$\"0POOhR/b%F>$\"%AGF07$$\"0QP7J3+h%F>$\"%EGF0 7$$\"0RQ)3qdpYF>$\"%PGF07$$\"0!*QwNh$*p%F>$\"%]GF07$$\"0SRkqX\"HZF>$\" %pGF07$$\"0!*R_0I*eZF>$\"%.HF07$$\"0TSSS9()y%F>$\"%eHF07$$\"0POOhR,0&F >$\"%`JF07$$\"0\\[[By!*H&F>$\"%:MF07$$\"0322d>)ebF>$\"%*f$F07$$\"0+,^Q \"3ycF>$\"%bOF07$$\"0'\\\\*>Vtz&F>$\"%#p$F07$$\"0li()=j;'eF>$\"%]PF07$ $\"0II!yJ)f#fF>$\"%0RF07$$\"0?Z`$\"%kRF07$$\"0:kE$\"%pR F07$$\"05\")*pJAufF>$\"%tRF07$$\"0+)HnJI!*fF>$\"%xRF07$$\"0&=$>;jC-'F> $\"%&)RF07$$\"0nll:BY0'F>$\"%%*RF07$$\"0\\ZZsk=K'F>$\"%\\UF07$$\"0caaH *\\alF>$\"%mVF07$$\"0_]]+^d!oF>$\"%fXF07$$\"0iggg=`1(F>$\"%eZF07$$\"0Q OO'[D>tF>$\"%Z\\F07$$\"0,++D^\\c(F>$\"%D^F07$$\"0rpp>bx$yF>$\"%=`F07$$ \"0pnnn\")G3)F>$\"%'\\&F07$$\"0`^^^1YM)F>$\"%*o&F07$$\"0)oo=\"o$ \"%oeF07$$\"0TRRR[5%))F>$\"%rgF07$$\"0pnn#4,&3*F>$\"%kiF07$$\"0%==o?-S $*F>$\"%ZkF07$$\"04222U$*e*F>$\"%=mF07$$\"0yvv+d.&)*F>$\"%3oF07$$\"099 9au,,\"F0$\"%PpF07$$\"0pooj#)e.\"F0$\"%#=(F07$$\"088j&yPh5F0$\"%OuF07$ $\"0_^^J0[3\"F0$\"%ewF07$$\"0onn#el66F0$\"%5zF07$$\"0XWWCrc8\"F0$\"%0 \")F07$$\"0PO')ow7;\"F0$\"%t#)F07$$\"044fO%y&=\"F0$\"%z$)F07$$\"0OgT%f =*=\"F0$\"%\\%)F07$$\"0i6C_(e#>\"F0$\"%/&)F07$$\"0)Gm+\"*)f>\"F0$\"%* \\)F07$$\"099*y1R*>\"F0$\"%%\\)F07$$\"0m;a$Q>17F0$\"%,&)F07$$\"0>>>*p* H@\"F0$\"%\"[)F07$$\"0<<#f!zZA\"F0$\"%_%)F07$$\"0::l7hlB\"F0$\"%<%)F07 $$\"0$GGyQ$*\\7F0$\"%W$)F07$$\"0^]+j1LE\"F0$\"%[#)F07$$\"0JIID#o(G\"F0 $\"%L!)F07$$\"0)yy``M98F0$\"%axF07$$\"00005^tL\"F0$\"%$\\(F07$$\"0111' >bj8F0$\"%hrF07$$\"0!)zzpg))Q\"F0$\"%EoF07$$\"0on>>y%4f\"F0$\"%B]F07$$\"0hg5`-hh\"F0$\"%#*[F07$$\"0dcc,' >T;F0$\"%yZF07$$\"0wvvD1um\"F0$\"%vYF07$$\"0BAs%oa\"p\"F0$\"%(f%F07$$ \"0KJJ6qir\"F0$\"%NXF07$$\"0kjj`nNu\"F0$\"%$[%F07$$\"0srr6$Go=F 0Fi\\m7$$\"0GFx*)y5$=F0$\"%GWF07$$\"0a`.,$*G%=F0$\"%dWF07$$\"0MLL$*z!o =F0$\"%%[%F07$$\"0%R9LV?r=F0$\"%CXF07$$\"0baHtGV(=F0$\"%WXF07$$\"0;lF8 `u(=F0$\"%TXF07$$\"0wvD`x0)=F0$\"%PXF07$$\"0)p>Kj#o)=F0$\"%HXF07$$\"0> ==8vI*=F0$\"%GXF07$$\"0%GGyOW1>F0$\"%*f%F07$$\"0[ZZA7)>>F0$\"%6ZF07$$ \"098j!3rD>F0$\"%2ZF07$$\"0zyyQ4;$>F0$\"%3ZF07$$\"0WW%pz]P>F0$\"%>ZF07 $$\"0555b1M%>F0$\"%fZF07$$\"0YY'*G7-&>F0$\"%')[F07$$\"0$GGG!=q&>F0$\"% +^F07$$\"0?>pwBQ'>F0F^cm7$$\"0cbb]H1(>F0F^cm7$$\"0LKK7'>&*>F0$\"%l`F07 $$\"01b#pHF,?F0$\"%BdF07$$\"0yx_\")\\t+#F0$\"%,kF07$$\"0^+8mEM,#F0$\"% 2kF07$$\"0CBt].&>?F0$\"%8kF07$$\"0`-!p!Qg-#F0$\"%DkF07$$\"0#=oIEdK?F0$ \"%\\kF07$$\"07hB>2\"R?F0$\"%9lF07$$\"0TSSvTc/#F0$\"%(o'F07$$\"0)ppWPw e?F0$\"%enF07$$\"0a``t&)=2#F0$\"%/oF07$$\"0%Qjp_&y2#F0$\"%roF07$$\"099 R![#Q3#F0$\"%CqF07$$\"0Ha5d4o3#F0$\"%wqF07$$\"0W%>QVz*3#F0$\"%&3(F07$$ \"0gM`5zF4#F0$\"%$4(F07$$\"0vuC(Qw&4#F0$\"%,rF07$$\"0l9FD.@5#F0$\"%BrF 07$$\"0baHjU%3@F0$\"%arF07$$\"0X%>8?y9@F0$\"%?sF07$$\"0NMMR@67#F0$\"%r tF07$$\"0'\\\\CY\\L@F0$\"%#F0$\"%%=)F07$$\"0YX&HRcAAF0$\"%=%)F07$$ \"000b(\\iZAF0$\"%$o)F07$$\"0\"44fRWsAF0$\"%w*)F07$$\"0kjjo#G(H#F0$\"% s#*F07$$\"054fh;EK#F0$\"%z&*F07$$\"0>=o:q%\\BF0$\"%9**F07$$\"0VUUA#4uB F0$\"&P-\"F07$$\"0:9kO(R)R#F0$\"&t0\"F07$$\"0%QQj\"zVU#F0$\"&a4\"F07$$ \"0`_-S/.X#F0$\"&d8\"F07$$\"0**)*)RQdtCF0$\"&K<\"F07$$\"#D!\"\"$\"&k@ \"F0-%'COLOURG6&%$RGBG$\"*++++\"!\")F(Fc`n-%+AXESLABELSG6$Q\"x6\"Q!Fj` n-%%VIEWG6$;F(Fj_n%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph compares the two methods of interpolation in terms of their err ors. The discrete points give the errors at the interpolation points w hose horizontal location is determined by extracting the " }{TEXT 290 1 "x" }{TEXT -1 38 " coordinates from a discrete solution." }}{PARA 0 "" 0 "" {TEXT -1 74 "The error curve for the polynomial interpolation \+ obtained via the option \"" }{TEXT 262 15 "output=rkinterp" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" }{TEXT -1 107 " while the err or curve for interpolation obtained by performing Runge-Kutta steps ob tained via the option \"" }{TEXT 262 13 "output=rkstep" }{TEXT -1 15 " \" is shown in " }{TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 578 "de := \+ diff(y(x),x)=5*cos(4*x)/(1+y(x));\nic := y(0)=1;\ngn1 := desolveRK(\{d e,ic\},x=0..0.8,method=rk45b,output=rkinterp):\ngn2 := desolveRK(\{de, ic\},x=0..0.8,method=rk45b,output=rkstep):\npts := desolveRK(\{de,ic\} ,x=0..0.8,method=rk45b,output=points):\npts2 := [seq([pts[i,1],evalf[1 8](gn2(pts[i,1])-g(pts[i,1]))],i=1..nops(pts))]:\np1 := plot([pts2$3], style=point,symbol=[circle,diamond,cross],color=[black,coral$2]):\np2 \+ := evalf[18](plot(['gn1'(x)-g(x),'gn2'(x)-g(x)],x=0.3..0.6,\n \+ color=[blue,magenta],numpoints=100)):\nplots[display]([p1,p2],view =[0.3..0.6,-2e-12..4e-11]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/ -%%diffG6$-%\"yG6#%\"xGF,,$*(\"\"&\"\"\"-%$cosG6#,$*&\"\"%F0F,F0F0F0,& F0F0F)F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\" !\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 704 277 277 {PLOTDATA 2 "6)-%'CU RVESG6&7<7$$\"\"!F)F(7$$\"3-+++++++5!#>$\"3+++++++S`!#K7$$\"3G+++8!\\9 W$F-$\"39+++++!oG\"!#I7$$\"3o******GaMUfF-$\"3;+++++]qFF67$$\"3;++++A] Y&)F-$\"3Y**********zTYF67$$\"3,+++1\"ei7\"!#=$\"3Y+++++q%*pF67$$\"3.+ ++?))459FD$\"3y**********Hf**F67$$\"31+++GuM2?FD$\"3#)*********H)o=FQ7$$\"33+++.U,[BFD$\"3=+++++$)> DFQ7$$\"33+++.qe&p#FD$\"3)**********zqU$FQ7$$\"3'******>eRd1$FD$\"3y** ********HsZFQ7$$\"3;+++-8#[Y$FD$\"3A+++++*f)pFQ7$$\"3*)*****>NKp!RFD$ \"3**********HaV6!#G7$$\"3A+++MTLXWFD$\"34++++g&f\"GFjo7$$\"3D+++!fn'R [FD$\"3A++++5)\\7$Fjo7$$\"3\")*****>(Hd;_FD$\"3H++++]5.MFjo7$$\"3q**** **G;UqbFD$\"33++++S`MOFjo7$$\"3c******f*)RSfFD$\"3C++++g6kRFjo7$$\"3[+ ++9Jx'G'FD$\"3w********pCQUFjo7$$\"3_+++pWO7mFD$\"3C++++]#fZ%Fjo7$$\"3 r*****f*Q6?pFD$\"3C+++++X\"p%Fjo7$$\"3\")******4=87sFD$\"3C++++g?\"*[F jo7$$\"3u*****p2f+\\(FD$\"3C+++++i\"3&Fjo7$$\"3A+++=2FbxFD$\"3;++++Ijk _Fjo7$$\"3U+++++++!)FD$\"3v*******Rk^V&Fjo-%'COLOURG6&%$RGBGF)F)F)-%'S YMBOLG6#%'CIRCLEG-%&STYLEG6#%&POINTG-F$6&F&-Fhs6&Fjs$\"*++++\"!\")$\") AR!)\\FitF(-F\\t6#%(DIAMONDGF_t-F$6&F&Fet-F\\t6#%&CROSSGF_t-F$6$7f[l7$ $\"\"$!\"\"$\"'*3I%!#<7$$\"3_^^^^\\qJIFD$\"'L#z%F]v7$$\"3\"444f5)\\XIF D$\"'i2]F]v7$$\"3IIIIg7HfIFD$\"'\"3:&F]v7$$\"3^^,*3CI71$FD$\"''4;&F]v7 $$\"3sssZ@#pJ1$FD$\"'\"z;&F]v7$$\"3LL3x6(QT1$FD$\"'5q^F]v7$$\"3%RRk??3 ^1$FD$\"'Tr^F]v7$$\"3aazN#pxg1$FD$\"'@sZF]v7$$\"3:::l#=Zq1$FD$\"'drZF] v7$$\"3edd#Q9D42$FD$\"'ljZF]v7$$\"3++++0J![2$FD$\"'!)[ZF]v7$$\"3&[[[t- fD3$FD$\"'<1ZF]v7$$\"3qppp\\\\J!4$FD$\"'FdYF]v7$$\"3MLLL$GA\")4$FD$\"' K7YF]v7$$\"3(pppphHf5$FD$\"'YzXF]v7$$\"3gggg]pt8JFD$\"'2kXF]v7$$\"3CCC C%GW:7$FD$\"'QpXF]v7$$\"3[[[)4^9$HJFD$\"'k'f%F]v7$$\"3ssssPZ3PJFD$\"'u XYF]v7$$\"3'pppW'\\&[9$FD$\"'X:ZF]v7$$\"3@@@@\">DE:$FD$\"'`.[F]v7$$\"3 \"4444=Lq;$FD$\"'80]F]v7$$\"3hgggq6W\"=$FD$\"'\"pB&F]v7$$\"3====[%y7@$ FD$\"':3dF]v7$$\"3wvvvDtqEKFD$\"'$y*eF]v7$$\"3LLLL.i8UKFD$\"'0FgF]v7$$ \"3#====!f#)\\KFD$\"'FmgF]v7$$\"3IIII+c^dKFD$\"'b)3'F]v7$$\"3yyyy)H0_E $FD$\"'`%4'F]v7$$\"3FFFF(*\\*GF$FD$\"'V&3'F]v7$$\"3UUUU(f9()G$FD$\"'SF gF]v7$$\"3eddd(>MXI$FD$\"'xNfF]v7$$\"3++++5\"o%=LFD$\"'G]eF]v7$$\"3UUU UA?SKLFD$\"'$Ry&F]v7$$\"3++++l^CSLFD$\"'rjdF]v7$$\"3eddd2$)3[LFD$\"'wg dF]v7$$\"3;:::]9$fN$FD$\"'nydF]v7$$\"3tsss#fuPO$FD$\"'V?eF]v7$$\"3GFFF (GD&zLFD$\"')\\)fF]v7$$\"3#====)fF&R$FD$\"'ZhiF]v7$$\"3FFFF2MjDMFD$\"' 3OqF]v7$$\"3edddKrTRMFD$\"')[S(F]v7$$\"3)yyyy&3?`MFD$\"'0)o(F]v7$$\"3G FF_.%)HdMFD$\"'%4u(F]v7$$\"3nmm;\\fRhMFD$\"'!Qx(F]v7$$\"3_^wdN.UiMFD$ \"'ZyxF]v7$$\"3OO'))>sWMY$FD$\"'g\"y(F]v7$$\"3@@'*R3\"pWY$FD$\"':$y(F] v7$$\"3111\"[\\$\\lMFD$\"'d%)pF]v7$$\"3wvDjnAanMFD$\"'4\")pF]v7$$\"3YX XXS5fpMFD$\"'2upF]v7$$\"3CCCuJhyxMFD$\"'**=pF]v7$$\"3....B7)f[$FD$\"'$ )QoF]v7$$\"3edddde')*\\$FD$\"'z*p'F]v7$$\"37777#\\]P^$FD$\"'?8mF]v7$$ \"3+++]dg#=_$FD$\"'N.mF]v7$$\"3)yyyGi,*HNFD$\"'^GmF]v7$$\"3wvvD)=xz`$F D$\"'+!p'F]v7$$\"3kjjj`F0YNFD$\"'E(y'F]v7$$\"31111T#\\.c$FD$\"'WRqF]v7 $$\"3[[[[GdkuNFD$\"'HutF]v7$$\"3kjjj`n,1OFD$\"'<\\#)F]v7$$\"3====)Q*)e j$FD$\"'52!*F]v7$$\"3LLLLoQZ^OFD$\"'`!H*F]v7$$\"3[[[[[$eqm$FD$\"'Uq%*F ]v7$$\"3%[[[t09Un$FD$\"'Q;&*F]v7$$\"3@@@@m(p8o$FD$\"'iR&*F]v7$$\"3edd2 va_)o$FD$\"'7T&*F]v7$$\"3%RRRR=\"o&p$FD$\"'[A&*F]v7$$\"3OOOO\")z66PFD$ \"'IC%*F]v7$$\"3zyyyyZbEPFD$\"'1s#*F]v7$$\"3)yyyGF*eUPFD$\"'u(4*F]v7$$ \"3(ppppwB'ePFD$\"'0c*)F]v7$$\"3@@@@T=esPFD$\"'&***))F]v7$$\"3XXXX:*Rl y$FD$\"'uS*)F]v7$$\"3-...=]h,QFD$\"'/D\"*F]v7$$\"3gggg?,p;QFD$\"'lw%*F ]v7$$\"3tsssK#Qy%QFD$\"(K?2\"F]v7$$\"3====3W2jQFD$\"(!))\\6F]v7$$\"3kj jj$e5$yQFD$\"(VlA\"F]v7$$\"3tssAv9o&)QFD$\"(x(e7F]v7$$\"3#===oO_I*QFD$ \"(o[G\"F]v7$$\"3OOOh7yt'*QFD$\"(\"z%H\"F]v7$$\"3\"444%eKU+RFD$\"(Y@I \"F]v7$$\"3==oI\")fE-RFD$\"(QZI\"F]v7$$\"3YXX?/(3T!RFD$\"(OlI\"F]v7$$ \"354Mll+.0RFD$\"(@rI\"F]v7$$\"3tsA5F9&f!RFD$\"(([28F]v7$$\"3OO6b)yso! RFD$\"(FwI\"F]v7$$\"3++++]Tz2RFD$\"(gN9\"F]v7$$\"3kjjjB1`SRFD$\"(ei2\" F]v7$$\"3UUUU7#Q_&RFD$\"(.:/\"F]v7$$\"3@@@@,e%*pRFD$\"(sL-\"F]v7$$\"3O OOOYvzxRFD$\"(mI-\"F]v7$$\"3_^^^\"H\\c)RFD$\"(\"3I5F]v7$$\"3nmmmO5]$*R FD$\"(nY/\"F]v7$$\"3#====y_8+%FD$\"(6o1\"F]v7$$\"3....yCe:SFD$\"(%GD6F ]v7$$\"3CCCCu@\")HSFD$\"('o/7F]v7$$\"3FFFF2e#41%FD$\"(\")zU\"F]v7$$\"3 @@@@68?!4%FD$\"(Nhl\"F]v7$$\"3====[E!37%FD$\"(h'e=F]v7$$\"3LLLL[=wNTFD $\"(&4J>F]v7$$\"3[[[[[5s]TFD$\"(I<)>F]v7$$\"3444f'\\^&eTFD$\"(r!**>F]v 7$$\"3qpppW>QmTFD$\"('45?F]v7$$\"3III!GR7U<%FD$\"(`\\,#F]v7$$\"3\"4444 %G/#=%FD$\"(BR,#F]v7$$\"3ggg5$\\%e*=%FD$\"(Yx+#F]v7$$\"3IIIIXh7(>%FD$ \"(ip*>F]v7$$\"3+++](znY?%FD$\"(`@)>F]v7$$\"3qppp\\%4A@%FD$\"((*R'>F]v 7$$\"3CCCCk\"fIC%FD$\"(FC(=F]v7$$\"3!444fHc$eUFD$\"(L4$=F]v7$$\"3ddddF MltUFD$\"(kQ!=F]v7$$\"3sssAl;o!G%FD$\"(U()z\"F]v7$$\"3)yyyG!*4xG%FD$\" (*R*z\"F]v7$$\"3...`S\"QZH%FD$\"(?m!=F]v7$$\"3====yjw,VFD$\"(M6#=F]v7$ $\"3::::&owyJ%FD$\"(L_)=F]v7$$\"37777#*p)RL%FD$\"(pk*>F]v7$$\"3ssssUiR [VFD$\"(Mt8#F]v7$$\"3LLLL$\\0GO%FD$\"(\\[J#F]v7$$\"3%[[[)f(o\"yVFD$\"( en`#F]v7$$\"3OOOOE?`$R%FD$\"(Fwx#F]v7$$\"3ssssKmB3WFD$\"(LX+$F]v7$$\"3 4444R7%HU%FD$\"(Y')>$F]v7$$\"3SRR*o-06V%FD$\"(%\\yKF]v7$$\"3qppp9)o#RW FD$\"(v%GLF]v7$$\"3GFxkh(48W%FD$\"(__L$F]v7$$\"3&[[)f32NVWFD$\"(O%RLF] v7$$\"3kjQ2#=rVW%FD$\"(30M$F]v7$$\"3UU#\\bl\"RXWFD$\"(ff\"GF]v7$$\"3@@ Y-H@TYWFD$\"(qf\"GF]v7$$\"3+++]-EVZWFD$\"(Ef\"GF]v7$$\"3:::S'\\9:X%FD$ \"([_\"GF]v7$$\"3IIII!R'fbWFD$\"(OR\"GF]v7$$\"31111r[tpWFD$\"(Hr!GF]v7 $$\"3#====NtQ[%FD$\"(A8!GF]v7$$\"3)yyyG+(*=\\%FD$\"(H+!GF]v7$$\"3%RRRR l?**\\%FD$\"(I2!GF]v7$$\"3++++0V%z]%FD$\"(EO!GF]v7$$\"31111cz'f^%FD$\" (j(3GF]v7$$\"3%[[[)HLfIXFD$\"(?N#GF]v7$$\"3jjjj.(=_a%FD$\"(_R%GF]v7$$ \"3aaaaCW@xXFD$\"($[(*GF]v7$$\"3ddddsy,\"f%FD$\"(g#>HF]v7$$\"3gggg?8#[ g%FD$\"(gv$HF]v7$$\"3mmmmO=a?YFD$\"(/D&HF]v7$$\"3tsss_BEOYFD$\"(:-'HF] v7$$\"3::::&fZ9l%FD$\"(!)3'HF]v7$$\"3ddddPGjmYFD$\"(3g&HF]v7$$\"3%[[[) f\"3=o%FD$\"(\"oZHF]v7$$\"37777#[$)pp%FD$\"(t(QHF]v7$$\"3777iHKa/ZFD$ \"(n^$HF]v7$$\"37777xH57ZFD$\"(9F$HF]v7$$\"3777iCFm>ZFD$\"(i=$HF]v7$$ \"37777sCAFZFD$\"(TI$HF]v7$$\"3III!G-&[MZFD$\"(ik$HF]v7$$\"3[[[[tvuTZF D$\"(OC%HF]v7$$\"3mmm;C,,\\ZFD$\"(97&HF]v7$$\"3&[[[[nsiv%FD$\"(lH'HF]v 7$$\"34444%pu>x%FD$\"((p)*HF]v7$$\"3LLLL8nn(y%FD$\"(dq/$F]v7$$\"3@@@@w =k-[FD$\"(%>+JF]v7$$\"34444Rqg<[FD$\"('Q^JF]v7$$\"3@@@r.@[D[FD$\"(VI<$ F]v7$$\"3LLLLorNL[FD$\"(Qw=$F]v7$$\"3OO')[MfKN[FD$\"(6)*=$F]v7$$\"3RRR k+ZHP[FD$\"(\"G\">$F]v7$$\"3!4f@P3z#Q[FD$\"(L<>$F]v7$$\"3UU#*zmMER[FD$ \"())>>$F]v7$$\"3%R*o()\\yCS[FD$\"(D]7$F]v7$$\"3XXX&HBK7%[FD$\"(l]7$F] v7$$\"3^^^El(p^%[FD$\"(Z[7$F]v7$$\"3dddd(H2\"\\[FD$\"([T7$F]v7$$\"3FFF Fd\\Oj[FD$\"(](>JF]v7$$\"3(pppphAw([FD$\"(,i6$F]v7$$\"3[[[[38]&)[FD$\" (\\e6$F]v7$$\"3++++++Q$*[FD$\"(fq6$F]v7$$\"3_^^^\"pe7!\\FD$\"(w*>JF]v7 $$\"3....$QP\"4\\FD$\"(CY7$F]v7$$\"3::::5-BC\\FD$\"(%)z8$F]v7$$\"3FFFF PIKR\\FD$\"(Rf:$F]v7$$\"3zyyy=_Vp\\FD$\"(xp>$F]v7$$\"3%RRRROh^)\\FD$\" (ri@$F]v7$$\"344444v)3+&FD$\"(F7B$F]v7$$\"3!zyyG'=P:]FD$\"(++C$F]v7$$ \"3mmmm;i&)H]FD$\"(KOC$F]v7$$\"3?@@@w,pW]FD$\"(*[UKF]v7$$\"3wvvvNT_f]F D$\"(GxB$F]v7$$\"3qppp*e-f2&FD$\"(z2B$F]v7$$\"3jjjjV5G#4&FD$\"(mbA$F]v 7$$\"3&yyyyr&p*4&FD$\"(l[A$F]v7$$\"35777#R5r5&FD$\"(DdA$F]v7$$\"3NOOOm ]_9^FD$\"(,&GKF]v7$$\"3ggggS(R>7&FD$\"(4NB$F]v7$$\"35777Fb5P^FD$\"(/&FD$\"(`)3MF]v7$$\"3UUUU7;Z6_FD$\"(()\\V$F]v7$$\"3DFxkJ1O8_FD$ \"(blV$F]v7$$\"3577(3l\\_@&FD$\"(HvV$F]v7$$\"3]aH[gT>;_FD$\"(yxV$F]v7$ $\"3&pp%4q'Qr@&FD$\"(xJS$F]v7$$\"3SRkqzJ3=_FD$\"(vKS$F]v7$$\"3!===$*oF !>_FD$\"(YLS$F]v7$$\"3]^^wFd!GA&FD$\"(/MS$F]v7$$\"3?@@@mPeE_FD$\"(sJS$ F]v7$$\"3ggg5V)RTB&FD$\"(:AS$F]v7$$\"3++++?fpT_FD$\"(76S$F]v7$$\"35444 RIpc_FD$\"(F.S$F]v7$$\"3====e,pr_FD$\"(GKS$F]v7$$\"3&RRRRTKxG&FD$\"(*H 6MF]v7$$\"3pppppYx.`FD$\"(]RU$F]v7$$\"3@@@@hy3K`FD$\"(yAX$F]v7$$\"3mmm m1avk`FD$\"(D8[$F]v7$$\"3DFFFx`\\z`FD$\"(6%*[$F]v7$$\"3)yyyyMNUR&FD$\" (8N\\$F]v7$$\"3NLLLy(>)3aFD$\"(5R\\$F]v7$$\"3zyyy3USBaFD$\"(8;\\$F]v7$ $\"3!===o:(3RaFD$\"(rz[$F]v7$$\"3&[[[[5qZX&FD$\"(%o&[$F]v7$$\"3DCCC*HV EY&FD$\"(vf[$F]v7$$\"3ljjj$\\;0Z&FD$\"(Ix[$F]v7$$\"30...)o*QyaFD$\"('H \"\\$F]v7$$\"3UUUU#)GE'[&FD$\"(pp\\$F]v7$$\"3qpppk(*e+bFD$\"(gL^$F]v7$ $\"3(ppppk;\\^&FD$\"(ix`$F]v7$$\"3baaaf68IbFD$\"(03d$F]v7$$\"37777scMX bFD$\"(1jg$F]v7$$\"3vvvv5'pFb&FD$\"((*=i$F]v7$$\"3SRRR\\N>gbFD$\"(YVj$ F]v7$$\"30...)[B2cFD$\"('>KOF]v7$$\"3&RRR*3)e6i&FD$\" ($zLOF]v7$$\"3++++!o&3NcFD$\"(&HROF]v7$$\"3qsss(>\"3^cFD$\"(n1l$F]v7$$ \"3XXXX:n2ncFD$\"(Xlm$F]v7$$\"3ggggq*\\rp&FD$\"(q>q$F]v7$$\"3vvvvg8/7d FD$\"(Y%=PF]v7$$\"3\"4444vKps&FD$\"(p>t$F]v7$$\"3DFFF()f$=u&FD$\"(%RTP F]v7$$\"3jjjjB#Rnv&FD$\"(0iu$F]v7$$\"3NOOO\"eR>x&FD$\"(Qmu$F]v7$$\"344 44R*Rry&FD$\"(9Pu$F]v7$$\"3ljjjj?D.eFD$\"(,#RPF]v7$$\"3====)=k$>eFD$\" (>kt$F]v7$$\"3!444%33vEeFD$\"(Rnt$F]v7$$\"3ljjjGu8MeFD$\"(s&QPF]v7$$\" 3NOO')[S_TeFD$\"(oAu$F]v7$$\"34444p1\"*[eFD$\"(P\"[PF]v7$$\"3SRRRaP\\j eFD$\"(Wqw$F]v7$$\"3ppppRo2yeFD$\"(Xjz$F]v7$$\"31111'*\\D4fFD$\"(`b)QF ]v7$$\"3?===Q,\"[#fFD$\"(H(GRF]v7$$\"3IIII!Gl.%fFD$\"('[]RF]v7$$\"3qpp >7hMZfFD$\"(Fa'RF]v7$$\"35444WpKafFD$\"(Wh'RF]v7$$\"3][[)fx28'fFD$\"(& fmRF]v7$$\"3)yyyyg)GofFD$\"(gq'RF]v7$$\"\"'Fju$\"(cW(RF]v-Fhs6&FjsF(F( Fgt-F$6$7_s7$Fhu$\"'6RQF]v7$F_v$\"'&G=%F]v7$Fdv$\"'<*Q%F]v7$Fiv$\"'-QY F]v7$Fgx$\"'8sZF]v7$Fay$\"':rZF]v7$Ffy$\"'>qZF]v7$F[z$\"'ApZF]v7$Fez$ \"'JnZF]v7$F_[l$\"'ZlZF]v7$Fc\\l$\"'7iZF]v7$F]]l$\"'9gZF]v7$Fb]l$\"'Lh ZF]v7$F\\^l$\"'qqZF]v7$F`_l$\"'$pz%F]v7$Fj_l$\"'gc[F]v7$Fd`l$\"':b\\F] v7$Fhal$\"'oZ^F]v7$Fbbl$\"',saF]v7$Fgbl$\"'#f'fF]v7$F\\cl$\"'#yE'F]v7$ Facl$\"')*GmF]v7$Ffcl$\"'1\\nF]v7$F[dl$\"'RvoF]v7$F_el$\"'z%)pF]v7$Fie l$\"'R%)pF]v7$F^fl$\"'f$)pF]v7$Fcfl$\"'\"G)pF]v7$Fhfl$\"'^\")pF]v7$F]g l$\"'F!)pF]v7$Fahl$\"'oxpF]v7$F[il$\"'OwpF]v7$F`il$\"'$z(pF]v7$Feil$\" 'd')pF]v7$F_jl$\"'P6qF]v7$Fc[m$\"'bgqF]v7$F]\\m$\"'ZirF]v7$Fg\\m$\"'tb tF]v7$Fa]m$\"'FNwF]v7$F[^m$\"'F3\")F]v7$F`^m$\"'rh))F]v7$Fj^m$\"'Kh**F ]v7$Fd_m$\"(=f1\"F]v7$F\\bm$\"(QO9\"F]v7$$\"3#===oQiT#RFD$\"(KO9\"F]v7 $Fabm$\"(NO9\"F]v7$F[cm$\"(oO9\"F]v7$F_dm$\"(vP9\"F]v7$Fidm$\"(RS9\"F] v7$F^em$\"(/[9\"F]v7$Fcem$\"(Pl9\"F]v7$Fhem$\"(m/:\"F]v7$Fbfm$\"((4e6F ]v7$Ffgm$\"(VH<\"F]v7$Fjhm$\"(uy>\"F]v7$F_im$\"(Y*R7F]v7$Fiim$\"(ngI\" F]v7$F][n$\"(_rR\"F]v7$Fg[n$\"(H6b\"F]v7$Fa\\n$\"(y$\\GF]v7$F_cn$\"(^4#GF]v7$Fdcn$\"(2I#GF]v7$F^dn$\"(v`#GF]v7$Fhdn$\"(6&H GF]v7$Fben$\"(Bj$GF]v7$F\\fn$\"(Y\"[GF]v7$F`gn$\"(:$oGF]v7$Fdhn$\"('=+ HF]v7$F^in$\"(oc&HF]v7$Fhin$\"(X%QIF]v7$Fbjn$\"(Wy4$F]v7$Fj\\o$\"($F]v7$F]do$\"(c?B$F]v7$Fbdo$\"(0[H$F]v7 $Fgdo$\"(zYL$F]v7$F\\eo$\"(vLQ$F]v7$Ffeo$\"(T!)R$F]v7$Fjfo$\"(SMS$F]v7 $F_go$\"(cRS$F]v7$Fdgo$\"(sWS$F]v7$Figo$\"(6bS$F]v7$F^ho$\"(clS$F]v7$F cho$\"(]'3MF]v7$Fhho$\"(q2T$F]v7$Fbio$\"(?aT$F]v7$Fgio$\"(S(>MF]v7$F\\ jo$\"(7`U$F]v7$Ffjo$\"(R:V$F]v7$F`[p$\"(%**RMF]v7$Fj[p$\"(WQX$F]v7$F^] p$\"()\\wMF]v7$Fh]p$\"(k'4NF]v7$Fb^p$\"(\"RlNF]v7$F\\_p$\"(zKg$F]v7$Ff _p$\"(i]j$F]v7$F[`p$\"(x!QOF]v7$F``p$\"(C6k$F]v7$Fj`p$\"(![YOF]v7$Fdap $\"(/Gl$F]v7$Fiap$\"(&3fOF]v7$Fcbp$\"(Qgm$F]v7$F]cp$\"(tXn$F]v7$Fgcp$ \"()\\'o$F]v7$Fadp$\"(Vdq$F]v7$Feep$\"(8Pt$F]v7$F_fp$\"(9qx$F]v7$Fdfp$ \"(H*\\QF]v7$Fifp$\"(p1!RF]v7$F^gp$\"(qP'RF]v7$Fhgp$\"(-w'RF]v7$Fbhp$ \"(D6(RF]v7$Fghp$\"(N#zRF]v-Fhs6&FjsFgtF(Fgt-%+AXESLABELSG6%Q!6\"F`br- %%FONTG6#%(DEFAULTG-%%VIEWG6$;FhuFghp;$!\"#!#7$\"\"%!#6" 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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 3" }{TEXT 295 61 " .. The accuracy of an adaptive \+ order 5-6 Runge-Kutta method " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this example we construct a continuous numerical solution to the differential equation" }}{PARA 257 "" 0 "" {TEXT -1 1 " " }{XPPEDIT 18 0 "dy/dx = (8*sin*7*x-3*y)/(6* x+1);" "6#/*&%#dyG\"\"\"%#dxG!\"\"*&,&**\"\")F&%$sinGF&\"\"(F&%\"xGF&F &*&\"\"$F&%\"yGF&F(F&,&*&\"\"'F&F/F&F&F&F&F(" }{TEXT -1 2 ", " }} {PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial condition " } {XPPEDIT 18 0 "y(0) = 1;" "6#/-%\"yG6#\"\"!\"\"\"" }{TEXT -1 2 ". " }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "Maple ca n find an analytical solution although it has an awkward form which re quires that an equation be solved for each evaluation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 153 "de := \+ diff(y(x),x)=(8*sin(7*x)-3*y(x))/(6*x+1);\nic := y(0)=1;\ndsolve(\{de, ic\},y(x));\ng := unapply(rhs(%),x):\nplot(g(x),x=0..2,0..1.4,labels=[ `x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\" yG6#%\"xGF,*&,&*&\"\")\"\"\"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F 1!\"\"F1,&*&\"\"'F1F,F1F1F1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%# icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#% \"xG,$*&#\"\"\"\"#@F+*&,,*,\"\")F+-%)FresnelSG6#,$*(\"\"$!\"\"F,#F+\" \"#*&%#PiGF7,&*&\"\"'F+F'F+F+F+F+F+F8F+F+-%$cosG6##\"\"(F>F+F,F8F;F8F+ *,F0F+-%)FresnelCGF3F+-%$sinGFAF+F,F8F;F8F7*,F0F+-F26#,$*(F6F7F;#F7F9F ,F8F+F+F?F+F,F8F;F8F7*,F0F+-FFFKF+FGF+F,F8F;F8F+F,F+F+FL\"Fjn7 $$\"+'zs$HLF2$\"+:-iZ8Fjn7$$\"+]h5NMF2$\"+bl*HN\"Fjn7$$\"+/&R3a$F2$\"+ dxrc8Fjn7$$\"+\"=1Pf$F2$\"+\"z`zN\"Fjn7$$\"+eGdYOF2$\"+FDxe8Fjn7$$\"+O &R%*p$F2$\"+sR+&F2$\"+x4*oC\"Fjn7$$\"++FZ=_F2$\"+MGJ47Fjn7$$\"+]Z/NaF2$\"+!>f !o6Fjn7$$\"+]?vVcF2$\"+]MbD6Fjn7$$\"+]$fC&eF2$\"+rx2\"3\"Fjn7$$\"+vb)> /'F2$\"+'y&fR5Fjn7$$\"+'z6:B'F2$\"+;*\\j(**F27$$\"+0o(oX'F2$\"+$RE&y%* F27$$\"+<=C#o'F2$\"+k%p+**)F27$$\"+Sb:toF2$\"+Qhi*e)F27$$\"+n#pS1(F2$ \"+\">Xi?)F27$$\"+j`A3vF2$\"+\"e/DS(F27$$\"+n(y8!zF2$\"+AU()>oF27$$\"+ j.tK$)F2$\"+IY>VjF27$$\"+DZ5Q&)F2$\"+M3YzhF27$$\"+)3zMu)F2$\"+5iwcgF27 $$\"+!plx&*)F2$\"+&=v;(fF27$$\"+#H_?<*F2$\"+p;yGfF27$$\"+!HV/F*F2$\"+y _eAfF27$$\"+&GM)o$*F2$\"+P5]CfF27$$\"+!GDsY*F2$\"+of@MfF27$$\"+!G;cc*F 2$\"+@**Q^fF27$$\"+XA(yx*F2$\"+bV37gF27$$\"+4#G,***F2$\"+8st,hF27$$\"+ !o2J/\"Fjn$\"+ST%4O'F27$$\"+%Q#\\\"3\"Fjn$\"+14')QmF27$$\"+;*[H7\"Fjn$ \"+NPudpF27$$\"+qvxl6Fjn$\"+N$G-F(F27$$\"+`qn27Fjn$\"+))zfDvF27$$\"+/q %zA\"Fjn$\"+#HgHi(F27$$\"+cp@[7Fjn$\"+i2))*p(F27$$\"+#GB2F\"Fjn$\"+4\\ 1fxF27$$\"+3'HKH\"Fjn$\"+j0)))y(F27$$\"+UDX88Fjn$\"+30s*y(F27$$\"+xanL 8Fjn$\"++OtlxF27$$\"+wxEb8Fjn$\"+!)>-8xF27$$\"+v+'oP\"Fjn$\"+]sBLwF27$ $\"+S<*fT\"Fjn$\"+$*)4\\U(F27$$\"+&)Hxe9Fjn$\"+!*RLe_g&F27$$\"+$*zym;Fjn$\"+-B7!G&F27$$\"+^j?4Fjn$\"+en '>!\\F27$$\"+/Uac>Fjn$\"+\"fZt1&F27$$\"\"#F)$\"+F-(GF&F2-%'COLOURG6&%$ RGBG$\"#5!\"\"F(F(-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F(Fdel;F($\"# 9F^fl" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve \+ 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 106 "W e start by constructing a discrete solution and make a numerical compa rison with the analytical solution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 374 "de := diff(y(x),x)=(8*sin(7*x)-3*y(x))/(6*x+1);\nic \+ := y(0)=1;\npts := desolveRK(\{de,ic\},y(x),x=0..2,method=rk56,output= points):\ncat(`The discrete solution has `,convert(nops(pts),string),` points`);\np1 := plot(pts,style=line,color=grey):\np2 := plot([pts$2] ,style=point,symbol=[diamond,cross],color=[black,red]):\nplots[display ]([p1,p2],view=[0..2,0..1.4],labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&*&\"\")\"\"\"-%$s inG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F1!\"\"F1,&*&\"\"'F1F,F1F1F1F1F: " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#%DThe~discrete~solution~has~58~pointsG " }}{PARA 13 "" 1 "" {GLPLOT2D 677 275 275 {PLOTDATA 2 "6'-%'CURVESG6% 7fn7$$\"\"!F)$\"\"\"F)7$$\"3-+++++++5!#>$\"3=+++:v^R(*!#=7$$\"3-+++(R \\IH#F/$\"3<+++$\\ww]*F27$$\"3%)*****\\DfKn$F/$\"3=+++]p&*p$*F27$$\"3y *******4&zb^F/$\"3H+++_0,E$*F27$$\"3m*****RBs(\\nF/$\"3Q+++&3_jP*F27$$ \"3U+++SVXl%)F/$\"3&)*****pi(Q?&*F27$$\"3*******\\2$RJ5F2$\"3a+++x[!ev *F27$$\"3.+++.'*pI7F2$\"30+++9Tx25!#<7$$\"3++++@bqX9F2$\"3++++S!zx/\"F V7$$\"3'******z1Cxn\"F2$\"3%*******zUH%4\"FV7$$\"3(*******og?G>F2$\"3) *******y2YX6FV7$$\"3/+++LO\"*)>#F2$\"3++++![(y)>\"FV7$$\"3/+++I`I#\\#F 2$\"31+++iP5^7FV7$$\"3:+++T\"*Q7GF2$\"35+++Js])H\"FV7$$\"3)*******eD%p ;$F2$\"3-+++'>(=O8FV7$$\"31+++k<4wNF2$\"3++++.$)ed8FV7$$\"3))*****zrOk *RF2$\"33+++bvs`8FV7$$\"37+++6va_WF2$\"3$******>q-4K\"FV7$$\"3!)***** \\>nY([F2$\"3%******R%e&pE\"FV7$$\"3!******R1N*)G&F2$\"3)******p>di>\" FV7$$\"3v*****Hfq!3dF2$\"3*******\\DB?6\"FV7$$\"3?+++vI$[9'F2$\"3#**** **4e]o,\"FV7$$\"3`+++F,HGmF2$\"3G+++,+r0\"*F27$$\"3!)*****H/&GRqF2$\"3 =+++\")>!\\D)F27$$\"3F+++K!*H&*)F2$\"3=+++MT5tfF27$$\"3Z******ovF5$*F2$\" 3[+++61SAfF27$$\"3Y+++4mqq'*F2$\"3++++F\"ev(fF27$$\"3%******z[&*R+\"FV $\"3E+++N(3l7'F27$$\"3.+++P%)eU5FV$\"3e*****pWTuN'F27$$\"35+++TdI%3\"F V$\"3K+++WqFgmF27$$\"3&******R0fT8\"FV$\"3^*****\\u*pUqF27$$\"3)****** Hw)pv6FV$\"3a*****fQIjL(F27$$\"3(******zLC\"=7FV$\"3s*****pv'>yvF27$$ \"3/+++g59e7FV$\"3%******f\"o\\HxF27$$\"33+++_v-(H\"FV$\"3-+++:x#4z(F2 7$$\"3!******4VXaL\"FV$\"3/+++SwXixF27$$\"3-+++H%GQP\"FV$\"3?+++rC-YwF 27$$\"35+++/%eDT\"FV$\"3Y+++h*HiW(F27$$\"3)******flr?X\"FV$\"3;+++4>;q rF27$$\"3++++T\"3I\\\"FV$\"3]+++$eIk#oF27$$\"33+++/8iO:FV$\"3>+++uD+&F27$$\"3)******4:*R\\+++E&p@u%F27$$\"3%******zE(4B=FV$\"36+++&ptYr%F27$$\"31+++ >-%*f=FV$\"3y*****\\dW*[ZF27$$\"31+++BBY(*=FV$\"3$)*****\\D;&R[F27$$\" 3\"******4zHj$>FV$\"3=+++JhG!)\\F27$$\"3/+++!*4kx>FV$\"3[+++un'\\;&F27 $$\"\"#F)$\"3[+++S-(GF&F2-%'COLOURG6&%$RGBG$\")=THv!\")Fj]lFj]l-%&STYL EG6#%%LINEG-F$6&F&-Fg]l6&Fi]lF)F)F)-%'SYMBOLG6#%(DIAMONDG-F^^l6#%&POIN TG-F$6&F&-Fg]l6&Fi]l$\"*++++\"F\\^lF(F(-Ff^l6#%&CROSSGFi^l-%+AXESLABEL SG6%%\"xG%%y(x)G-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F(Fb]l;F($\"#9!\"\"" 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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continuous solution can be constructed over the interva l from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 " to " } {XPPEDIT 18 0 "x = 2;" "6#/%\"xG\"\"#" }{TEXT -1 21 " using the proced ure " }{TEXT 0 9 "desolveRK" }{TEXT -1 20 " with the options ''" } {TEXT 262 11 "method=rk56" }{TEXT -1 9 "'' and ''" }{TEXT 262 15 "outp ut=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 250 "de := diff(y(x),x)=(8*sin(7 *x)-3*y(x))/(6*x+1);\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},y(x),x =0..4,method=rk56,output=rkinterp);\nplot('gn1'(x),x=0..2,0..1.4,label s=[`x`,`y(x)`],\n color=COLOR(RGB,0,.7,0),thickness=2,la bels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG 6$-%\"yG6#%\"xGF,*&,&*&\"\")\"\"\"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\" $F1F)F1!\"\"F1,&*&\"\"'F1F,F1F1F1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 470 275 275 {PLOTDATA 2 "6'-%'CURVESG6#7`p7$$\"\"!F)$\"\"\"F)7$$\"+L\"Fjn7$$\"+'zs$HLF2$\"+:-iZ8Fjn7$$\"+]h5NMF 2$\"+bl*HN\"Fjn7$$\"+/&R3a$F2$\"+dxrc8Fjn7$$\"+\"=1Pf$F2$\"+\"z`zN\"Fj n7$$\"+eGdYOF2$\"+EDxe8Fjn7$$\"+O&R%*p$F2$\"+tR+&F2$\"+x4*oC\"Fjn7$$\"++FZ=_F2 $\"+MGJ47Fjn7$$\"+]Z/NaF2$\"+*=f!o6Fjn7$$\"+]?vVcF2$\"+]MbD6Fjn7$$\"+] $fC&eF2$\"+rx2\"3\"Fjn7$$\"+vb)>/'F2$\"+'y&fR5Fjn7$$\"+'z6:B'F2$\"+<* \\j(**F27$$\"+0o(oX'F2$\"+'QE&y%*F27$$\"+<=C#o'F2$\"+p%p+**)F27$$\"+Sb :toF2$\"+Phi*e)F27$$\"+n#pS1(F2$\"+!=Xi?)F27$$\"+j`A3vF2$\"+\"e/DS(F27 $$\"+n(y8!zF2$\"+@U()>oF27$$\"+j.tK$)F2$\"+FY>VjF27$$\"+DZ5Q&)F2$\"+Q3 YzhF27$$\"+)3zMu)F2$\"+6iwcgF27$$\"+!plx&*)F2$\"+(=v;(fF27$$\"+#H_?<*F 2$\"+q;yGfF27$$\"+!HV/F*F2$\"+z_eAfF27$$\"+&GM)o$*F2$\"+S5]CfF27$$\"+! GDsY*F2$\"+qf@MfF27$$\"+!G;cc*F2$\"+B**Q^fF27$$\"+XA(yx*F2$\"+dV37gF27 $$\"+4#G,***F2$\"+8st,hF27$$\"+!o2J/\"Fjn$\"+RT%4O'F27$$\"+%Q#\\\"3\"F jn$\"+14')QmF27$$\"+;*[H7\"Fjn$\"+KPudpF27$$\"+qvxl6Fjn$\"+K$G-F(F27$$ \"+`qn27Fjn$\"+\"*zfDvF27$$\"+/q%zA\"Fjn$\"+%HgHi(F27$$\"+cp@[7Fjn$\"+ e2))*p(F27$$\"+#GB2F\"Fjn$\"+3\\1fxF27$$\"+3'HKH\"Fjn$\"+j0)))y(F27$$ \"+UDX88Fjn$\"+50s*y(F27$$\"+xanL8Fjn$\"+*fLdw(F27$$\"+wxEb8Fjn$\"+\") >-8xF27$$\"+v+'oP\"Fjn$\"+`sBLwF27$$\"+S<*fT\"Fjn$\"+#*)4\\U(F27$$\"+& )Hxe9Fjn$\"+%)RLe_g&F27$$\"+$ *zym;Fjn$\"+9B7!G&F27$$\"+^j?4Fjn$\"+Zn'>!\\F27$$\"+/Uac>Fjn$\"+.wMn]F2 7$$\"\"#F)$\"+S-(GF&F2-%&COLORG6&%$RGBGF($\"\"(!\"\"F(-%*THICKNESSG6#F eel-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F(Fdel;F($\"#9F^fl" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 139 "The first error \+ graph is plotted using standard 10 digit arithmetic for the evaluation of the procedure which gives the numerical solution." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "plot('gn1 '(x)-g(x),x=0..2,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7[io7$$\"\"!F)F(7$$\"+S&)G\\a!#7F(7$$\" +3x&)*3\"!#6F(7$$\"+N@Ki8F1F(7$$\"+ilyM;F1F(7$$\"+w(=5x\"F1F(7$$\"+!*4 D2>F1F(7$$\"+/K[V?F1F(7$$\"+]9QF1FD7$$\"+%>M2&RF1F(7$$\"+2k'p3%F1F(7$$\"+?' )>BUF1FS7$$\"+M3VfVF1FD7$$\"+bd'zZ%F1FS7$$\"+w1]'f%F1F(7$$\"+'fN]r%F1F D7$$\"+<0dL[F1FS7$$\"+Qa5_\\F1F(7$$\"+g.kq]F1FD7$$\"+!Gv\"*=&F1FD7$$\" ++-r2`F1F(7$$\"+?^CEaF1F(7$$\"+S+yWbF1F(7$$\"+g\\JjcF1F(7$$\"+!))\\=y& F1FS7$$\"++[Q+fF1F(7$$\"+?(>*=gF1$!\"#FF7$$\"+SYXPhF1FD7$$\"+l&*)fD'F1 F(7$$\"+!\\CXP'F1FD7$$\"+5%fI\\'F1FS7$$\"+IVf6mF1F(7$$\"+]#H,t'F1FD7$$ \"+qTm[oF1F(7$$\"+!4*>npF1FS7$$\"+5St&3(F1F(7$$\"+I*oU?(F1F(7$$\"+]Q!G K(F1F(7$$\"+q(Q8W(F1FD7$$\"+!pt)fvF1F(7$$\"+5'3%ywF1FD7$$\"+]%ya\"zF1F D7$$\"+#H[D:)F1FD7$$\"+%pU&G5!#5FD7$$\"+e0$=C\"FbvFD7$$\"+8%\\_D\"FbvF D7$$\"+o#o'o7FbvF(7$$\"+Ar3#G\"FbvF]s7$$\"+xf]&H\"FbvF(7$$\"+K[#*38Fbv F(7$$\"+'oVBK\"FbvF(7$$\"+TDwN8FbvFD7$$\"+'R\"=\\8FbvFS7$$\"+]-gi8FbvF (7$$\"+0\">gP\"FbvF]s7$$\"+gzV*Q\"FbvFS7$$\"+9o&GS\"FbvF]s7$$\"+pcF;9F bvF(7$$\"+CXpH9FbvF(7$$\"+yL6V9FbvFD7$$\"+LA`c9FbvFD7$$\"+)3^*p9FbvF(7 $$\"+U*pL[\"FbvFS7$$\"+(z)y'\\\"FbvF(7$$\"+_w?5:FbvF(7$$\"+1liB:Fbv$\" \"#FF7$$\"+h`/P:FbvF(7$$\"+;UY]:FbvF(7$$\"+qI)Qc\"FbvFD7$$\"+D>Ix:FbvF (7$$\"+!y?2f\"FbvF(7$$\"+M'RTg\"FbvFS7$$\"+*[evh\"FbvFD7$$\"+Wt(4j\"Fb vFS7$$\"+)>'RW;FbvFD7$$\"+`]\"yl\"Fbv$\"\"$FF7$$\"+3RBr;FbvFS7$$\"+&)* )e%o\"FbvF(7$$\"+iS%zp\"FbvFS7$$\"+S\"*H6Zw\"FbvFS7$$\"+EX2yFbvF(7$$\"+w.)\\#>FbvFS7$$\"+`aLQ>FbvFD7$$\"+I0 p^>FbvF(7$$\"+3c/l>FbvF(7$$\"+&o+%y>FbvF(7$$\"+idv\"*>FbvFD7$$\"+R360? FbvFez7$$\"+;fY=?FbvF(7$$\"+$*4#=.#FbvFD7$$\"+qguN@FbvF(7$$\"+WQ7[@FbvFD7$$\"+5d]g@FbvFS7$$\" +wv)G<#FbvFD7$$\"+U%p_=#FbvF(7$$\"+38l(>#FbvFez7$$\"+uJ.5AFbvFS7$$\"+S ]TAAFbvFS7$$\"+1pzMAFbvFS7$$\"+t(yrC#FbvFD7$$\"+S1cfAFbvFS7$$\"+1D%>F# FbvF]s7$$\"+sVK%G#FbvFS7$$\"+Qiq'H#FbvF(7$$\"+n6w&R#FbvF(7$$\"+'4;[\\# FbvF(7$$\"+,oj2DFbvFS7$$\"+1vX?DFbvFD7$$\"+7#yK`#FbvF(7$$\"+<*)4YDFbvF D7$$\"+A'>*eDFbvF(7$$\"+G.urDFbvFD7$$\"+L5c%e#FbvFD7$$\"+Q_6,$FbvF(7$$\"+)Q6W-$FbvF(7$$\"+! eqw.$FbvFD7$$\"+s(H40$FbvFD7$$\"+j*)=kIFbvFD7$$\"+a\"[u2$FbvFD7$$\"+Yt q!4$FbvF(7$$\"+Ql'R5$FbvFD7$$\"+IdA$F bvFD7$$\"+s+/5KFbvF(7$$\"+j#*HBKFbvF]s7$$\"+a%elB$FbvF(7$$\"+Yw\")\\KF bvFD7$$\"+Qo2jKFbvF(7$$\"+IgLwKFbvFS7$$\"+A_f*G$FbvF(7$$\"+8W&GI$FbvFD 7$$\"+/O6;LFbvF(7$$\"+'zs$HLFbvF(7$$\"+t%RAQ$FbvF(7$$\"+]h5NMFbvF(7$$ \"+)[R:Y$FbvF(7$$\"+FG(z[$FbvF(7$$\"+'\\*=,NFbvF(7$$\"+mhS9NFbvF(7$$\" +NGiFNFbvF(7$$\"+/&R3a$FbvFD7$$\"+eGdYOFbvFD7$$\"+8iI_PFbvFD7$$\"+#=,f w$FbvF(7$$\"+]h\\zPFbvF(7$$\"+>64$z$FbvF(7$$\"+)3'o1QFbvF(7$$\"+d5G?QF bvFS7$$\"+Eg(Q$QFbvFS7$$\"+&*4ZZQFbvF(7$$\"+kf1hQFbvF(7$$\"+SeW:RFbvF( 7$$\"+:d#)pRFbvF(7$$\"+maeySFbvF(7$$\"+<_M(=%FbvF(7$$\"+8l$*yVFbvF(7$$ \"+4y_qXFbvF(7$$\"+5#3Se%FbvFS7$$\"+7')[(f%FbvF(7$$\"+8!p4h%FbvFS7$$\" +9%\\Wi%FbvFS7$$\"+;)Hzj%FbvFD7$$\"+<-T^YFbvF(7$$\"+=1*[m%FbvFS7$$\"+? 5PyYFbvFD7$$\"+@9&=p%FbvFD7$$\"+A=L0ZFbvFD7$$\"+CA\")=ZFbvF(7$$\"+DEHK ZFbvF(7$$\"+EIxXZFbvF(7$$\"+GMDfZFbvF(7$$\"+HQtsZFbvFD7$$\"+IU@'y%FbvF D7$$\"+JYp*z%FbvF(7$$\"+K]<8[FbvF(7$$\"+MalE[FbvFD7$$\"+Ne8S[FbvF(7$$ \"+Qm4n[FbvF(7$$\"+Su0%*[FbvF(7$$\"+X!zz%\\FbvF(7$$\"+]1!>+&FbvF(7$$\" ++kV:]FbvFD7$$\"+b@(*G]FbvFS7$$\"+5z]U]FbvF(7$$\"+gO/c]FbvF(7$$\"+:%z& p]FbvF(7$$\"+q^6$3&FbvF(7$$\"+?4l'4&FbvFD7$$\"+vm=5^FbvFD7$$\"+ICsB^Fb vFD7$$\"+!=es8&FbvF(7$$\"+NRz]^FbvFS7$$\"+!pHV;&FbvF(7$$\"+&>,9>&FbvF( 7$$\"++FZ=_FbvF(7$$\"+0UaX_FbvF(7$$\"+5dhs_FbvF(7$$\"+l9:'G&FbvFD7$$\" +?so*H&FbvF(7$$\"+qHA8`FbvF(7$$\"+D(enK&FbvFD7$$\"+![%HS`FbvFS7$$\"+I- $QN&FbvFD7$$\"+&)fOn`FbvFD7$$\"+SYg&FbvF(7$$\"+SOmS,.'Fbv$\"\" &Fbv7$$\"+vb)>/'Fbv$!\"&Fbv7$$\"+g4$Q0'Fbv$!\"$Fbv7$$\"+]jnlgFbvFcfn7$ $\"+S<_xgFbvFegn7$$\"+IrO*3'FbvFjgn7$$\"+?D@,hFbv$\"\"(Fbv7$$\"+5z08hF bv$!#8Fbv7$$\"++L!\\7'FbvF`gn7$$\"+&o[n8'Fbv$\"\")Fbv7$$\"+qSf[hFbvFee n7$$\"+g%R/;'Fbv$\"\"%Fbv7$$\"+][GshFbvF\\gn7$$\"+S-8%='FbvF(7$$\"+Ic( f>'Fbv$FTFbv7$$\"+?5#y?'Fbv$\"#6Fbv7$$\"+5km>iFbvFhhn7$$\"+'z6:B'FbvFh jn7$$\"+5rfXiFbv$\"\"'Fbv7$$\"+DCofiFbvFhfn7$$\"+SxwtiFbvFeen7$$\"+]I& yG'FbvFjen7$$\"+g$Q>I'FbvFjen7$$\"+vO-;jFbvF(7$$\"+!**3,L'FbvFhjn7$$\" ++V>WjFbv$Ff\\lFbv7$$\"+5'z#ejFbvFhhn7$$\"+D\\OsjFbvFcfn7$$\"+S-X'Q'Fb vFein7$$\"+]b`+kFbvF^fn7$$\"+l3i9kFbvFhhn7$$\"+!=1(GkFbvF`gn7$$\"+!\\ \"zUkFbvFhfn7$$\"+0o(oX'FbvF^fn7$$\"+?@'4Z'Fbv$\"#7Fbv7$$\"+Iu/&['Fbv$ FEFbv7$$\"+XF8*\\'FbvFegn7$$\"+g!=K^'FbvFhjn7$$\"+qLIFlFbvFeen7$$\"+&o )QTlFbvFhjn7$$\"++SZblFbvFhjn7$$\"+5$f&plFbvFjen7$$\"+DYk$e'FbvF__o7$$ \"+S*Hxf'FbvF]jn7$$\"+]_\"=h'FbvFjgn7$$\"+l0!fi'FbvFhfn7$$\"+!)e)*RmFb v$\"#5Fbv7$$\"+!>rSl'FbvFjen7$$\"+0l:omFbvFegn7$$\"+<=C#o'FbvF`gn7$$\" +DR<%p'FbvFg[o7$$\"+Ng51nFbvFhfn7$$\"+S\"Q!=nFbvFhfn7$$\"+]-(*HnFbvFg[ o7$$\"+gB!>u'FbvF]jn7$$\"+lW$Qv'FbvFegn7$$\"+qlwlnFbvFegn7$$\"+!o)pxnF bv$!\"'Fbv7$$\"+!zI'*y'FbvFhfn7$$\"+&*Gc,oFbvF`gn7$$\"++]\\8oFbvFdco7$ $\"+5rUDoFbv$FFFbv7$$\"+?#ft$oFbvFaao7$$\"+D8H\\oFbv$!\")Fbv7$$\"+IMAh oFbvFcfn7$$\"+Sb:toFbvF__o7$$\"+]w3&)oFbvFaao7$$\"+b(>q*oFbvFg[o7$$\"+ g=&*3pFbvF\\gn7$$\"+qR)3#pFbvFein7$$\"+!3;G$pFbvF^fn7$$\"+!>[Z%pFbvFhh n7$$\"++.ocpFbvF__o7$$\"+0ChopFbvF^fn7$$\"+5Xa!)pFbvFbdo7$$\"+?mZ#*pFb vF^fn7$$\"+I(3W+(FbvFeen7$$\"+N3M;qFbvF^]o7$$\"+SHFGqFbvF]jn7$$\"+]]?S qFbvFido7$$\"+gr8_qFbvFjgn7$$\"+n#pS1(Fbv$F1Fbv7$$\"+X\"\\z2(FbvFdco7$ $\"+D!H=4(FbvFhjn7$$\"++*3d5(FbvFido7$$\"+!y)e>rFbvF]jn7$$\"+g'oM8(Fbv F`gn7$$\"+N&[t9(FbvF]jn7$$\"+5%G7;(FbvFeen7$$\"+!H3^<(FbvF^]o7$$\"+q\" ))*)=(FbvF__o7$$\"+X!oG?(FbvF__o7$$\"+?zu;sFbvFcfn7$$\"++yiIsFbvFegn7$ $\"+!o2XC(FbvFido7$$\"+gvQesFbvFegn7$$\"+SuEssFbvFj^o7$$\"+:t9'G(FbvFd co7$$\"+!>F+I(FbvF]jn7$$\"+qq!RJ(FbvFhjn7$$\"+]pyFtFbvFido7$$\"+IomTtF bvF\\[o7$$\"+5nabtFbvF]jn7$$\"+&eE%ptFbvFjen7$$\"+gkI$Q(FbvF(7$$\"+Sj= (R(FbvF`gn7$$\"+?i16uFbvFhjn7$$\"+&4Y\\U(FbvF(7$$\"+qf#)QuFbvFdco7$$\" +]eq_uFbvFjen7$$\"+IdemuFbvFg[o7$$\"+0cY![(FbvFbdo7$$\"+&[XV\\(FbvF^fn 7$$\"+j`A3vFbvF(7$$\"+09^?vFbvFcfn7$$\"+]uzKvFbvF(7$$\"+&\\$3XvFbvFdco 7$$\"+S&ptb(FbvFaao7$$\"+&eb'pvFbvFegn7$$\"+I;%>e(FbvF`gn7$$\"+qwA%f(F bvF^]o7$$\"+:P^1wFbvF`gn7$$\"+g(*z=wFbvFein7$$\"++e3JwFbvFhjn7$$\"+X=P VwFbvF(7$$\"+!*ylbwFbvFhjn7$$\"+NR%zm(FbvF^fn7$$\"+!)*H-o(FbvFg[o7$$\" +?g^#p(FbvF^fn7$$\"+l?![q(FbvFhjn7$$\"+5\")3g;u(FbvFhhn7$$\"+Si%Rv(FbvFaho7$$\"+&GKiw(FbvF^]o7$$\"+I$=&yx FbvFegn7$$\"+qV!3z(FbvF^fn7$$\"+:/4.yFbvFjgn7$$\"+gkP:yFbvFjen7$$\"++D mFyFbvF^]o7$$\"+X&[*RyFbvF(7$$\"+!fMA&yFbvF^]o7$$\"+N1_kyFbvF^]o7$$\"+ !o1o(yFbvFegn7$$\"+DF4*)yFbvF(7$$\"+n(y8!zFbvF__o7$$\"+0&e[\"zFbvFjgn7 $$\"+S#Q$GzFbvFjen7$$\"+!)z\"=%zFbvFg[o7$$\"+:xHbzFbvF]jn7$$\"+]uxozFb vFcfn7$$\"+!>dA)zFbvFegn7$$\"+Ipt&*zFbvFjen7$$\"+lm@4!)FbvF`gn7$$\"++k pA!)FbvFdco7$$\"+Sh)FbvFegn7$$\"+IFT6#) FbvFjen7$$\"+lC*[A)FbvF]jn7$$\"++APQ#)FbvFhjn7$$\"+S>&=D)FbvF__o7$$\"+ !oJ`E)FbvFjgn7$$\"+:9\")y#)FbvF^]o7$$\"+]6H#H)FbvF(7$$\"+!*3x0$)FbvFee n7$$\"+D1D>$)FbvFhjn7$$\"+j.tK$)FbvFjgn7$$\"+gicX$)FbvF(7$$\"+g@Se$)Fb vFg[o7$$\"+g!Q7P)FbvF^]o7$$\"+bR2%Q)FbvFjgn7$$\"+])4pR)FbvFegn7$$\"+]d u4%)FbvFein7$$\"+];eA%)FbvFjen7$$\"+XvTN%)FbvFhfn7$$\"+SMD[%)FbvFhfn7$ $\"+S$*3h%)FbvFhjn7$$\"+S_#RZ)FbvF(7$$\"+N6w'[)FbvFjen7$$\"+Iqf*\\)Fbv Fhfn7$$\"+IHV7&)FbvF__o7$$\"+I)o__)FbvF__o7$$\"+DZ5Q&)FbvF]jn7$$\"+?1% 4b)FbvFhhn7$$\"+?lxj&)FbvFegn7$$\"+?Chw&)FbvFjen7$$\"+:$[%*e)FbvF(7$$ \"+5UG-')FbvF]jn7$$\"+5,7:')FbvF]jn7$$\"+5g&zi)FbvFhjn7$$\"+0>zS')FbvF (7$$\"++yi`')FbvFhfn7$$\"++PYm')FbvF(7$$\"++'*Hz')FbvF__o7$$\"+&\\N@p) FbvFhjn7$$\"+!Rr\\q)FbvF(7$$\"+!H2yr)FbvFeen7$$\"+!>V1t)FbvF^]o7$$\"+) 3zMu)FbvFhjn7$$\"++?(ov)FbvFhjn7$$\"+:\\Eq()FbvFjgn7$$\"+Iyl$y)FbvF__o 7$$\"+S20(z)FbvFjen7$$\"+ll$Q#))FbvF__o7$$\"+!RA1&))FbvFhjn7$$\"++`,k) )FbvF(7$$\"+:#3u())FbvF__o7$$\"+I6!3*))FbvFhjn7$$\"+SS>/*)FbvFhjn7$$\" +]pe<*)FbvF__o7$$\"+l)z4$*)FbvF(7$$\"+!ysV%*)FbvF(7$$\"+!plx&*)FbvFhfn 7$$\"+StL6!*FbvF(7$$\"+!**3\\1*FbvFjen7$$\"+S1[=\"*FbvF(7$$\"+#H_?<*Fb vFhjn7$$\"+!zZ7A*FbvFhjn7$$\"+!HV/F*FbvFhjn7$$\"+l@u#G*FbvF(7$$\"+S5/& H*FbvFjen7$$\"+:*RtI*FbvF]jn7$$\"+!zQ'>$*FbvFjen7$$\"+lw$>L*FbvF__o7$$ \"+SlBW$*FbvFjgn7$$\"+5a`c$*FbvF(7$$\"+&GM)o$*FbvF^]o7$$\"+I?V$R*FbvFh jn7$$\"+!yH!=%*FbvF__o7$$\"+IviU%*FbvFhjn7$$\"+!GDsY*FbvFhfn7$$\"+bT_z %*FbvFhjn7$$\"+II#=\\*FbvFjen7$$\"+0>7/&*FbvF(7$$\"+!y?k^*FbvFjen7$$\" +b'>(G&*FbvF(7$$\"+I&=5a*FbvF__o7$$\"+0uJ`&*FbvFhfn7$$\"+!G;cc*FbvFhfn 7$$\"+q-o='*FbvF(7$$\"+gUur'*FbvFjen7$$\"+g-,&o*FbvF]jn7$$\"+biF)p*Fbv F(7$$\"+]Aa6(*FbvFhfn7$$\"+]#3[s*FbvFjen7$$\"+]U2Q(*FbvFhjn7$$\"+]-M^( *FbvF^]o7$$\"+]igk(*FbvFhjn7$$\"+XA(yx*FbvFhfn7$$\"+S#Q6z*FbvFhjn7$$\" +SUS/)*FbvFhfn7$$\"+S-n<)*FbvF__o7$$\"+Ni$4$)*FbvFjgn7$$\"+IA?W)*FbvFe en7$$\"+I#ou&)*FbvF]jn7$$\"+IUtq)*FbvFhfn7$$\"+D-+%))*FbvF]jn7$$\"+?iE (*)*FbvF^]o7$$\"+?A`5**FbvFhfn7$$\"+?#)zB**FbvFhjn7$$\"+:U1P**FbvFjen7 $$\"+5-L]**FbvFjen7$$\"+5ifj**FbvF^]o7$$\"+5A'o(**FbvFhjn7$$\"+4#G,*** FbvF(7$$\"+yY_/5FFFhjn7$$\"+Ol.55FFFhfn7$$\"++XT65FFF__o7$$\"+kCz75FFF een7$$\"+G/<95FFFegn7$$\"+$R[b,\"FFFg[o7$$\"+ej#p,\"FFF__o7$$\"+AVI=5F FFdco7$$\"+'G#o>5FFF__o7$$\"+]-1@5FFFhjn7$$\"+3@dE5FFF(7$$\"+lR3K5FFFj en7$$\"+I>YL5FFFegn7$$\"+%*)R[.\"FFFhjn7$$\"+ey@O5FFFjen7$$\"+AefP5FFF jen7$$\"+'yt*Q5FFFeen7$$\"+^]d 5FFF`gn7$$\"+m9qe5FFF^]o7$$\"+))4!*f5FFF^]o7$$\"+505h5FFFbdo7$$\"+K+Ii 5FFF(7$$\"+w!*pk5FFFhfn7$$\"+?\")4n5FFF]jn7$$\"+UwHo5FFF^]o7$$\"+kr\\p 5FFFhjn7$$\"+'o'pq5FFF^]o7$$\"+3i*=2\"FFF__o7$$\"+Id4t5FFF`gn7$$\"+__H u5FFFhfn7$$\"+uZ\\v5FFFg[o7$$\"+'H%pw5FFFhjn7$$\"+=Q*y2\"FFFjen7$$\"+S L4z5FFF^]o7$$\"+iGH!3\"FFF(7$$\"+%Q#\\\"3\"FFF(7$$\"++zy#3\"FFF]jn7$$ \"+6FFF__o7$$\"+$)yN?6FFFhfn 7$$\"++Ml@6FFFjgn7$$\"+;*[H7\"FFFjgn7$$\"+7tGC6FFF__o7$$\"+2diD6FFFido 7$$\"+-T'p7\"FFFhjn7$$\"+)\\-$G6FFFein7$$\"+%*3kH6FFF]jn7$$\"+*Gz48\"F FFjgn7$$\"+%o Zx:\"FFFjgn7$$\"+#f&3f6FFFjen7$$\"+))RUg6FFF^]o7$$\"+%Qi<;\"FFF`gn7$$ \"+z25j6FFF^]o7$$\"+u\"RW;\"FFFeen7$$\"+qvxl6FFFjgn7$$\"+)G'Ro6FFF__o7 $$\"+1],r6FFFhjn7$$\"+lVKs6FFF^fn7$$\"+CPjt6FFF]jn7$$\"+#3V\\<\"FFF(7$ $\"+TCDw6FFF]jn7$$\"++=cx6FFFhjn7$$\"+e6()y6FFFhfn7$$\"+<0=!=\"FFFg[o7 $$\"+w)*[\"=\"FFFjgn7$$\"+N#*z#=\"FFF]jn7$$\"+%f3T=\"FFF`gn7$$\"+`zT&= \"FFFjgn7$$\"+7ts'=\"FFF__o7$$\"+IgM*=\"FFFjgn7$$\"+ZZ'>>\"FFFegn7$$\" +1TF$>\"FFFegn7$$\"+kMe%>\"FFFjgn7$$\"+BG*e>\"FFF^fn7$$\"+#=-s>\"FFFjg n7$$\"++4#)*>\"FFF__o7$$\"+='RC?\"FFF(7$$\"+x*[P?\"FFFhjn7$$\"+O$e]?\" FFF__o7$$\"+%pnj?\"FFFjgn7$$\"+`qn27FFF^]o7$$\"+CR%*37FFFjen7$$\"+'z5- @\"FFF(7$$\"+owZ67FFFhfn7$$\"+SXu77FFFdco7$$\"+79,97FFF^]o7$$\"+%Gy_@ \"FFFhjn7$$\"+c^a;7FFF]jn7$$\"+G?\"y@\"FFFjgn7$$\"++*y!>7FFF^]o7$$\"+s dM?7FFF__o7$$\"+WEh@7FFFhjn7$$\"+;&zGA\"FFF^]o7$$\"+)QYTA\"FFFjgn7$$\" +gKTD7FFFeen7$$\"+K,oE7FFF(7$$\"+/q%zA\"FFFhfn7$$\"+wQ@H7FFF`gn7$$\"+[ 2[I7FFF__o7$$\"+?wuJ7FFF]jn7$$\"+#\\9IB\"FFFeen7$$\"+k8GM7FFFjen7$$\"+ O#[bB\"FFF]jn7$$\"+3^\"oB\"FFFjgn7$$\"+!)>3Q7FFFegn7$$\"+_)[$R7FFFhjn7 $$\"+CdhS7FFF^]o7$$\"+'f#)=C\"FFF(7$$\"+o%\\JC\"FFFhfn7$$\"+SjTW7FFFhf n7$$\"+7KoX7FFFhfn7$$\"+%3]pC\"FFF__o7$$\"+cp@[7FFFeen7$$\"+-Oi\\7FFF^ ]o7$$\"+Z-.^7FFFhfn7$$\"+#*oV_7FFF__o7$$\"+QN%QD\"FFFhjn7$$\"+$=]_D\"F FF__o7$$\"+Golc7FFFjgn7$$\"+uM1e7FFF(7$$\"+>,Zf7FFF`gn7$$\"+kn(3E\"FFF jen7$$\"+5MGi7FFFegn7$$\"+b+pj7FFFjen7$$\"++n4l7FFFhjn7$$\"+YL]m7FFF__ o7$$\"+\"**4zE\"FFF`gn7$$\"+OmJp7FFF(7$$\"+#GB2F\"FFF__o7$$\"+G*H@F\"F FFhjn7$$\"+tl`t7FFFjen7$$\"+=K%\\F\"FFFhfn7$$\"+k)\\jF\"FFFhfn7$$\"+4l vx7FFFjen7$$\"+aJ;z7FFFeen7$$\"++)p0G\"FFF(7$$\"+Xk(>G\"FFFeen7$$\"+EI g(G\"FFFjen7$$\"+3'HKH\"FFF(7$$\"+UN\\%H\"FFFegn7$$\"+vuv&H\"FFF^]o7$$ \"+39-(H\"FFF__o7$$\"+U`G)H\"FFFjgn7$$\"+v#\\&*H\"FFFjen7$$\"+3K\"3I\" FFF(7$$\"+Ur2-8FFF^]o7$$\"+v5M.8FFFhfn7$$\"+3oR38FFFhfn7$$\"+UDX88FFFh fn7$$\"+wkr98FFFegn7$$\"+4/)fJ\"FFFjgn7$$\"+UVC<8FFFjen7$$\"+w#3&=8FFF jgn7$$\"+5Ax>8FFF(7$$\"+Vh.@8FFFhjn7$$\"+w+IA8FFFjen7$$\"+5ScB8FFFhfn7 $$\"+W(>'G8FFFhjn7$$\"+xanL8FFF__o7$$\"+wxEb8FFFhjn7$$\"+v+'oP\"FFF^]o 7$$\"+SH3y8FFFjen7$$\"+/eIz8FFF`gn7$$\"+p'G0Q\"FFFjgn7$$\"+M:v\"Q\"FFF (7$$\"+)RuHQ\"FFF(7$$\"+js>%Q\"FFFhfn7$$\"+G,U&Q\"FFF(7$$\"+#*Hk'Q\"FF F(7$$\"+@()3*Q\"FFFhfn7$$\"+]W`\"R\"FFF]jn7$$\"+9tv#R\"FFF`gn7$$\"+z,) RR\"FFF]jn7$$\"+WI?&R\"FFF(7$$\"+3fU'R\"FFF(7$$\"+s([wR\"FFFjen7$$\"+P ;())R\"FFFjgn7$$\"+-X4+9FFFido7$$\"+mtJ,9FFFhjn7$$\"+I-a-9FFF(7$$\"+&4 jPS\"FFFhfn7$$\"+gf)\\S\"FFFegn7$$\"+C)3iS\"FFFeen7$$\"+#G+6T\"FFFjgn7 $$\"+S<*fT\"FFF__o7$$\"+a'GtT\"FFFeen7$$\"+obm=9FFFhhn7$$\"+#[-+U\"FFF ]jn7$$\"+'RR8U\"FFFhhn7$$\"+5jnA9FFFjgn7$$\"+CK,C9FFFhjn7$$\"+Q,ND9FFF (7$$\"+^qoE9FFFdco7$$\"+kR-G9FFFdco7$$\"+y3OH9FFF^]o7$$\"+#z(pI9FFFdco 7$$\"+1Z.K9FFFg[o7$$\"+?;PL9FFF]jn7$$\"+M&3ZV\"FFFhjn7$$\"+[a/O9FFFcfn 7$$\"+iBQP9FFFg[o7$$\"+w#>(Q9FFFeen7$$\"+!>c+W\"FFFeen7$$\"+/JRT9FFF^f n7$$\"+=+tU9FFFhfn7$$\"+Kp1W9FFFido7$$\"+YQSX9FFFido7$$\"+g2uY9FFF__o7 $$\"+uw2[9FFFg[o7$$\"+)e9%\\9FFFbdo7$$\"+-:v]9FFFcfn7$$\"+;%)3_9FFFaho 7$$\"+I`U`9FFFhjn7$$\"+WAwa9FFF^]o7$$\"+e\"*4c9FFFhfn7$$\"+sgVd9FFF\\g n7$$\"+&)Hxe9FFFdco7$$\"+;4.g9FFFido7$$\"+[))Gh9FFFeen7$$\"+!yYDY\"FFF hjn7$$\"+7Z!QY\"FFF]jn7$$\"+WE1l9FFFaho7$$\"+w0Km9FFF^]o7$$\"+3&yvY\"F FF]jn7$$\"+Sk$)o9FFFdco7$$\"+sV4q9FFF`gn7$$\"+/BNr9FFFaao7$$\"+O-hs9FF F^]o7$$\"+n\"oQZ\"FFFjgn7$$\"+)4E^Z\"FFF^]o7$$\"+ISQw9FFFegn7$$\"+i>kx 9FFFegn7$$\"+%*)**)y9FFFhjn7$$\"+Ey:![\"FFF`gn7$$\"+edT\"[\"FFFj^o7$$ \"+!ptE[\"FFF]jn7$$\"+@;$R[\"FFF^fn7$$\"+_&*=&[\"FFF^fn7$$\"+%[Zk[\"FF Fcfn7$$\"+;aq([\"FFF]jn7$$\"+[L'*)[\"FF$\"#:Fbv7$$\"+!G@-\\\"FFF]in7$$ \"+7#z9\\\"FFFhfn7$$\"+Wrt#\\\"FFFjgn7$$\"+w]*R\\\"FFF^fn7$$\"+3ID&\\ \"FFF^fn7$$\"+S4^'\\\"FFFein7$$\"+s)ox\\\"FF$!#:Fbv7$$\"+.o-*\\\"FFFaa o7$$\"+/*QU:FFFhhn7$$\"+aZnV:FFF`gn7$$\"+5.'\\a \"FFF]jn7$$\"+meCY:FFFeen7$$\"+A9`Z:FFFeen7$$\"+zp\")[:FFFjgn7$$\"+OD5 ]:FFFhfn7$$\"+#4)Q^:FFF\\gn7$$\"+[On_:FFFhjn7$$\"+/#fRb\"FFFbdo7$$\"+g ZCb:FFFhhn7$$\"+<.`c:FF$F-Fbv7$$\"+ue\"yb\"FFF`gn7$$\"+I95f:FFFegn7$$ \"+')pQg:FFFggu7$$\"+UDnh:FFFegn7$$\"+#*p&>d\"FFF^fn7$$\"+U9C#e\"FFFid o7$$\"++te$e\"FFF`gn7$$\"+eJ$\\e\"FFFggu7$$\"+;!zie\"FFFcfn7$$\"+v[i(e \"FFFaho7$$\"+M2(*)e\"FFFj^v7$$\"+#f;.f\"FFF]fu7$$\"+]Cm\"f\"FFF]jn7$$ \"+3$3If\"FFF\\gn7$$\"+mTN%f\"FFFhhn7$$\"+C+q&f\"FFF]fu7$$\"+#)e/(f\"F FF]jn7$$\"+T;FFF__o7$$\"+K8F@;FFFj^v7$$\"+!>H;FFFaao7$$\"+#z$\\I;FFFdco7$$\"+9+zJ;FFFido7$$\"+Ni3L;FFFhf n7$$\"+cCQM;FF$\"#;Fbv7$$\"+y'ycj\"FFF^fn7$$\"++\\(pj\"FFF\\[o7$$\"+@6 FQ;FFF__o7$$\"+UtcR;FFF^]o7$$\"+kN'3k\"FFF^]o7$$\"+'yf@k\"FFFaao7$$\"+ 2gXV;FFF(7$$\"+GAvW;FFF]jn7$$\"+]%[gk\"FFFegn7$$\"+sYMZ;FFFhhn7$$\"+$* 3k[;FFF(7$$\"+9r$*\\;FFF`gn7$$\"+OLB^;FFFjen7$$\"+e&HDl\"FFFhfn7$$\"+z d#Ql\"FFFegn7$$\"++?7b;FFFg[o7$$\"+A#=kl\"FFFeen7$$\"+WWrd;FFFjgn7$$\" +l1,f;FFFaho7$$\"+')oIg;FFF`gn7$$\"+3Jgh;FFF\\[o7$$\"+H$**Gm\"FFF]fu7$ $\"+]b>k;FFF]jn7$$\"+s<\\l;FFF`gn7$$\"+$*zym;FFFj^o7$$\"+mN6o;FF$\"#?F bv7$$\"+S\"R%p;FFFdco7$$\"+9Zwq;FFFhjn7$$\"+)G!4s;FFF\\[o7$$\"+ieTt;FF F(7$$\"+N9uu;FFFhjn7$$\"+3q1w;FFFj^o7$$\"+#e#Rx;FFF`gn7$$\"+c\"=(y;FFF ein7$$\"+IP/!o\"FFFbdo7$$\"+/$p8o\"FFF\\gn7$$\"+x[p#o\"FFFdco7$$\"+]/- %o\"FFF`gn7$$\"+CgM&o\"FFFg[o7$$\"+)frmo\"FFFaao7$$\"+sr*zo\"FFFegn7$$ \"+YFK*o\"FFFg[o7$$\"+?$[1p\"FFFein7$$\"+%*Q(>p\"FFF\\gn7$$\"+n%*H$p\" FFF(7$$\"+S]i%p\"FFF]jn7$$\"+91&fp\"FFF^fn7$$\"+)=wsp\"FFFein7$$\"+i=FFF^]o7$$\"+ >tQ?=FFFhjn7$$\"+)zr<#=FFF(7$$\"+yi:B=FFFeen7$$\"+e2aC=FFFeen7$$\"+P_# f#=FFF]jn7$$\"+;(4t#=FFFjen7$$\"+'>%pG=FFF^]o7$$\"+bJYJ=FFFhfn7$$\"+9@ BM=FFFhjn7$$\"+4/ZN=FFFhjn7$$\"+/(3n$=FFF__o7$$\"+**p%z$=FFFeen7$$\"+% H&=R=FFF(7$$\"+*eB/%=FFFhjn7$$\"+%)=mT=FFF__o7$$\"+z,!H%=FFFhfn7$$\"+u %QT%=FFFhfn7$$\"+pnPX=FFF]jn7$$\"+k]hY=FFFhfn7$$\"+fL&y%=FFF`gn7$$\"+a ;4\\=FFFjgn7$$\"+\\*H.&=FFFhjn7$$\"+W#o:&=FFF^]o7$$\"+Rl!G&=FFFg[o7$$ \"+M[/a=FFF(7$$\"+9!)**e=FFFhjn7$$\"+%>^R'=FFFhfn7$$\"+*[*=l=FFF^]o7$$ \"+%yFk'=FFFjgn7$$\"+zgmn=FFFhhn7$$\"+uV!*o=FFFg[o7$$\"+pE9q=FFF^]o7$$ \"+k4Qr=FFFjen7$$\"+e#>E(=FFF^]o7$$\"+`v&Q(=FFFjgn7$$\"+MyW)=FFFhjn7$$\"+z+u&)=F FFeen7$$\"+g.1()=FFF(7$$\"+S1Q))=FFF^]o7$$\"+@4q*)=FFF^]o7$$\"+-7-\"*= FFF^]o7$$\"+#[TB*=FFF]jn7$$\"+jFFFdco7$$\"+ [Me,>FFFdco7$$\"+GP!H!>FFFegn7$$\"+4SA/>FFFg[o7$$\"+!HWb!>FFF\\gn7$$\" +rX'o!>FFFjgn7$$\"+_[=3>FFFegn7$$\"+K^]4>FFFcfn7$$\"+8a#3\">FFF]jn7$$ \"+%pX@\">FFF^]o7$$\"+ufY8>FFF`gn7$$\"+biy9>FFFhjn7$$\"+Ol5;>FFFaho7$$ \"+8-P<>FFFg[o7$$\"+!*Qj=>FFF`gn7$$\"+nv*)>>FFFein7$$\"+W7;@>FFFhhn7$$ \"+@\\UA>FFFaho7$$\"+)f)oB>FFF]jn7$$\"+wA&\\#>FFFido7$$\"+`f@E>FFFjen7 $$\"+I'zu#>FFFeen7$$\"+3LuG>FFF]jn7$$\"+&)p+I>FFFjen7$$\"+i1FJ>FFF__o7 $$\"+RV`K>FFFhfn7$$\"+;!)zL>FFFhjn7$$\"+$ph]$>FFFbdo7$$\"+q`KO>FFF`gn7 $$\"+Z!*eP>FFFhfn7$$\"+CF&)Q>FFFein7$$\"+,k6S>FFF(7$$\"+y+QT>FFFido7$$ \"+bPkU>FFF(7$$\"+Ku!R%>FFFjgn7$$\"+56FFFegn7$$\"+(yMk%>FFF`gn7$$\" +k%)pZ>FFFaao7$$\"+U@'*[>FFF^]o7$$\"+>eA]>FFFj^o7$$\"+'\\*[^>FFFegn7$$ \"+tJv_>FFFjgn7$$\"+]o,a>FFFdco7$$\"+F0Gb>FFFein7$$\"+/Uac>FFFj^o7$$\" +)>-z&>FFFhjn7$$\"+\">g#f>FFFein7$$\"+%==1'>FFFido7$$\"+yh(>'>FFF(7$$ \"+sTLj>FFFcfn7$$\"+m@pk>FFF]fu7$$\"+g,0m>FFFaho7$$\"+`\"3u'>FFF\\gn7$ $\"+Yhwo>FFFjen7$$\"+ST7q>FFFjen7$$\"+M@[r>FFFhhn7$$\"+G,%G(>FFF`gn7$$ \"+A\")>u>FFFeen7$$\"+:hbv>FFFaao7$$\"+3T\"p(>FFF]in7$$\"+-@Fy>FFF(7$$ \"+'4I'z>FFF^fn7$$\"+*3))4)>FFF\\[o7$$\"+#3YB)>FFFido7$$\"+wSq$)>FF$!# 9Fbv7$$\"+q?1&)>FFF(7$$\"+k+U')>FFFcfn7$$\"+e!yx)>FFFaho7$$\"+^g8*)>FF Fein7$$\"+WS\\!*>FFF^]o7$$\"+Q?&=*>FFFido7$$\"+K+@$*>FFFeen7$$\"+E!oX* >FFFhfn7$$\"+?g#f*>FFFegn7$$\"+8SG(*>FFFdco7$$\"+1?k)*>FF$!#>Fbv7$$Ffz F)Fggu-%'COLOURG6&%$RGBGF(F($\"*++++\"Fjdo-%+AXESLABELSG6$Q\"x6\"Q!F^j y-%%VIEWG6$;F(Fciy%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 136 "The solution has been constructed in suc h a way that up to a point it will produce more accurate values when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "evalf[15](plot('gn1'(x)-g(x),x=0..2 ,color=blue,numpoints=100));" }}{PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7f[m7$$\"\"!F)F(7$$\"0lkkkR5K\"!#<$\"#8 !#97$$\"0IHHHz?k#F-$\"#7F07$$\"0&RRR*=J'RF-$!#rF07$$\"0geeeeTG&F-$!$5 \"F07$$\"0DBBB)>0mF-$\"#:F07$$\"0!zyyyBEzF-$\"$`\"F07$$\"0b___xsC*F-$! \"#F07$$\"0srrrJo0\"!#;$!$<\"F07$$\"0===oN*)=\"FR$!#_F07$$F,FR$!#`F07$ $\"0766hVJX\"FR$!$g#F07$$\"0edddZ_e\"FR$!$6&F07$$\"0]]]]b%\\=FR$!#!)F0 7$$\"0VVVVjO6#FR$\"$6$F07$$\"0uuuCNMd#FR$!$t%F07$$\"011112K.$FR$!$G*F0 7$$\"0srr'H4jKFR$!$!HF07$$\"0QPP()yH\\$FR$!$&=F07$$\"0@?q#=#zg$FR$!$f( F07$$\"0/..ykGs$FR$!$`*F07$$\"0'eeLx!y$QFR$!$:*F07$$\"0pooo]F&RFR$!$n) F07$$\"0===V\"G6UFR$!%.6F07$$\"0onn<7)pWFR$!%/8F07$$\"0VU#\\v2*f%FR$!% \\5F07$$\"0=<<#HMGZFR$!$V'F07$$\"0bazgvHz%FR$!$\"[F07$$\"0#>>%H3w&[FR$ !$7%F07$$\"0IH/)4CA\\FR$!$q%F07$$\"0nmmmto)\\FR$!$r'F07$$\"0lll:NR]&FR $!%R7F07$$\"0lkkk'*4-'FR$!%`;F07$$\"05555T7G'FR$!%P5F07$$\"0bbbb&[TlFR $!$\\*F07$$\"0IGGy2;n'FR$!%$[\"F07$$\"0+,,,I1(FR$!%$f\"F07$$\"0!>>>*=AK(FR$!%WF07$$\"0]^^^#)*Q\"*FR$!%\\@F07$$\"0!>>%H'[o#*FR$!%+BF07$$ \"0IKK2!*zR*FR$!%dBF07$$\"0qsA&Q\\F&*FR$!%dAF07$$\"0588j(*pl*FR$!%)*>F 07$$\"0]`.T,ly*FR$!%%o\"F07$$\"0!RR*=0g\"**FR$!%#[\"F07$$\"0VVo*3b/5!# :$!%p:F07$$\"0ZZZF,v,\"Fc[l$!%w>F07$$\"0qqq!z_l5Fc[l$!%gAF07$$\"0%RRRX b86Fc[l$!%zDF07$$\"0<<<<\"eh6Fc[l$!%$G#F07$$\"0SSS!yg47Fc[l$!%'4#F07$$ \"0+++gO$f7Fc[l$!%2EF07$$\"0gffRl!48Fc[l$!%\"z#F07$$\"0]\\\\f(\\@8Fc[l $!%=HF07$$\"0SRRzHRL\"Fc[l$!%&*HF07$$\"0IHH*>OY8Fc[l$!%qHF07$$\"0?>>>% ze8Fc[l$!%KGF07$$\"0+**)*eeOQ\"Fc[l$!%TBF07$$\"0zyy)H_39Fc[l$!%T@F07$$ \"0QQQyPUV\"Fc[l$!%yFF07$$\"0)zzzD&*f9Fc[l$!%zHF07$$\"0yxx(*4GZ\"Fc[l$ !%VHF07$$\"0eddPnc[\"Fc[l$!%.HF07$$\"0QPPxC&)\\\"Fc[l$!%)*GF07$$\"0=<< <#Q6:Fc[l$!%\\HF07$$\"0yww'p4P:Fc[l$!%zJF07$$\"0POOw6Gc\"Fc[l$!%:LF07$ $\"0'fffl_)e\"Fc[l$!%\"3$F07$$\"0cbbNTUh\"Fc[l$!%.EF07$$\"0(ooo1x;=Fc[l$!%qNF07$$\"0GGG)RwC>Fc[l$!%nOF07$$\"0QQQ)z AI?Fc[l$!%AQF07$$\"0DDvdR=/#Fc[l$!%;RF07$$\"0777<^M0#Fc[l$!%\")RF07$$ \"0**)*[wi]1#Fc[l$!%+SF07$$\"0'eeeVnw?Fc[l$!%eRF07$$\"0gffa(*)*4#Fc[l$ !%&p$F07$$\"0LLLt?J7#Fc[l$!%FLF07$$\"0!333rcp@Fc[l$!%oMF07$$\"0GGG[8g@ #Fc[l$!%jSF07$$\"0@@rQ&3HAFc[l$!%MSF07$$\"0999Hd@C#Fc[l$!%'*RF07$$\"02 2d>H_D#Fc[l$!%tRF07$$\"0+++5,$oAFc[l$!%yRF07$$\"0'ee3\\W%H#Fc[l$!%,TF0 7$$\"0srrr)e?BFc[l$!%-VF07$$\"0lk9igOL#Fc[l$!%tVF07$$\"0edd_KnM#Fc[l$! %'R%F07$$\"0^]+V/)fBFc[l$!%bVF07$$\"0WVVLwGP#Fc[l$!%YUF07$$\"0IHH9?!*R #Fc[l$!%&)QF07$$\"0:::&R;DCFc[l$!%(e$F07$$\"0===eo,`#Fc[l$!%![%F07$$\" 0@@@@t^j#Fc[l$!%G[F07$$\"0777#*odo#Fc[l$!%!o%F07$$\"0...jkjt#Fc[l$!%#3 %F07$$\"0%RRR.'py#Fc[l$!%kYF07$$\"0&[[[gbPGFc[l$!%\"4&F07$$\"0DDD0R8-$ Fc[l$!%O`F07$$\"0---#[()RKFc[l$!%odF07$$\"0333G.]U$Fc[l$!%NgF07$$\"0ee e[xE`$Fc[l$!%RiF07$$\"0444p^.k$Fc[l$!%OrF07$$\"0]\\*p\"zTm$Fc[l$!%?rF0 7$$\"0!**)*[m+)o$Fc[l$!%DrF07$$\"0II!GT$=r$Fc[l$!%crF07$$\"0qqqghct$Fc [l$!%)>(F07$$\"0^^^c;Ly$Fc[l$!%csF07$$\"0KKK_r4$QFc[l$!%-sF07$$\"0#>>W S6dQFc[l$!%SrF07$$\"0^^^ccK)QFc[l$!%/rF07$$\"0IJc#yK'*QFc[l$!%4rF07$$ \"056h3*R4RFc[l$!%QrF07$$\"0!4fY.ZARFc[l$!%#>(F07$$\"0qqqgTb$RFc[l$!%v sF07$$\"0II!GTohRFc[l$!%&\\(F07$$\"0!**)*[m#y)RFc[l$!%#o(F07$$\"0]\\*p \"pR,%Fc[l$!%&o(F07$$\"0444p6,/%Fc[l$!%!o(F07$$\"0IIIb0]1%Fc[l$!%)o(F0 7$$\"0_^^T**)*3%Fc[lFabm7$$\"0tssF$z9TFc[l$!%dwF07$$\"0%RRRroRTFc[l$!% !f(F07$$\"0:::+\"ekTFc[l$!%*\\(F07$$\"0OOO'[Z*=%Fc[l$!%3uF07$$\"0eddso V@%Fc[l$!%\\tF07$$\"0zyyei#RUFc[l$!%_tF07$$\"0]]]&3@\"H%Fc[l$!%\"f(F07 $$\"0AAA7fJM%Fc[l$!%FzF07$$\"0%RR*Q2^R%Fc[l$!%0yF07$$\"0mlllbqW%Fc[l$! %GsF07$$\"0CBBQgZ\\%Fc[l$!%3sF07$$\"0\"333^YUXFc[l$!%AsF07$$\"0QQQ$)p, f%Fc[l$!%\"3(F07$$\"0'fffX(yj%Fc[l$!%[oF07$$\"0..`b-Om%Fc[l$!%*y'F07$$ \"0555bI$*o%Fc[l$!%FoF07$$\"0<iF07$$\"0?AA_sq >&Fc[l$!%eiF07$$\"0!HHzfL?_Fc[l$!%\"4'F07$$\"0kjjV*fV_Fc[l$!%$p&F07$$ \"0+--7+TM&Fc[l$!%6\\F07$$\"0SSS!3gWaFc[l$!%YYF07$$\"0STTcd0Z&Fc[l$!%' \\%F07$$\"0SUUK9l\\&Fc[l$!%0'Fc[l$!&GE$Fc[l7$$\"0&RR*y@l5'Fc[l$!&:'>Fc[l7$$\"0!zyyD3hhF c[l$!&@,\"Fc[l7$$\"0!\\[tHO)='Fc[l$!&%[5Fc[l7$$\"0&==oLk:iFc[l$!&R7\"F c[l7$$\"0IIbc$GHiFc[l$!&@:\"Fc[l7$$\"0!)yGwBHC'Fc[l$!&\"f6Fc[l7$$\"0IF -'RcciFc[l$!&\"R6Fc[l7$$\"0wvv:/-F'Fc[l$!&X3\"Fc[l7$$\"0NNNXH#>jFc[l$! %slFc[l7$$\"0&\\\\\\ZDojFc[l$!%'3#Fc[l7$$\"0&[[t5^!Q'Fc[l$!%0;Fc[l7$$ \"0vuuRnFR'Fc[l$!%T:Fc[l7$$\"0lk9sB]S'Fc[l$!%#*=Fc[l7$$\"0baa/!GVpFc[l$\"&#>LFc[l7$$\"0!zG\"fih&pFc[l$\"&QR$Fc[l7$$\"0]]]gE \"ppFc[l$\"&a^$Fc[l7$$\"0+,,m#)4-(Fc[l$\"&LI%Fc[l7$$\"0^^^rQG2(Fc[l$\" &rU%Fc[l7$$\"0:<sFc[l$\"&$pWFc[l7$$\"0999u3!osFc[l$\"&6Y%Fc[l7$$\"0!)zz>8+P( Fc[l$\"&ph%Fc[l7$$\"0XXXl&Fc[l7$$\"0bbblX/*Q)Fc[l$\"&'>dFc[l7$$\"0qr@>PXT)Fc[l$\"&Dq&Fc[l7$$\"0:;; TK+W)Fc[l$\"&)>dFc[l7$$\"0gg5jFbY)Fc[l$\"&:x&Fc[l7$$\"0000&G-\"\\)Fc[l $\"&&ReFc[l7$$\"0SV$4.X9&)Fc[l$\"&'))eFc[l7$$\"0!==ox(y`)Fc[l$\"&[*eFc [l7$$\"0??qA08c)Fc[l$\"&a%eFc[l7$$\"0geeoKZe)Fc[l$\"&Ix&Fc[l7$$\"0NNNg (eJ')Fc[l$\"&Sv&Fc[l7$$\"0777_U%y')Fc[l$\"&&\\dFc[l7$$\"0XWWaV@t)Fc[l$ \"&2n&Fc[l7$$\"0vwwcWey)Fc[l$\"&3i&Fc[l7$$\"0544fX&R))Fc[l$\"&Jt&Fc[l7 $$\"0TTThYK*))Fc[l$\"&9!eFc[l7$$\"0?==.is\"*)Fc[l$\"&WX%f+#*Fc[l$ \"&Xc&Fc[l7$$\"0?:l<(R8#*Fc[l$\"&-g&Fc[l7$$\"0:6')*)*>E#*Fc[l$\"&Ri&Fc [l7$$\"0522i-!R#*Fc[l$\"&ni&Fc[l7$$\"0+**[13YE*Fc[l$\"&Ab&Fc[l7$$\"0\" 444N@!H*Fc[l$\"&@R&Fc[l7$$\"0IFxMnCI*Fc[l$\"&hK&Fc[l7$$\"0ljj=@ZJ*Fc[l $\"&tI&Fc[l7$$\"0++]-vpK*Fc[l$\"&^I&Fc[l7$$\"0NOO')G#R$*Fc[l$\"&fI&Fc[ l7$$\"0544aOPO*Fc[l$\"&VJ&Fc[l7$$\"0!===UC)Q*Fc[l$\"&RJ&Fc[l7$$\"0DFFd fsV*Fc[l$\"&_B&Fc[l7$$\"0tss#\\F'[*Fc[l$\"&=9&Fc[l7$$\"0```$f(Rq*Fc[l$ \"&([\\Fc[l7$$\"0NPPZK#)z*Fc[l$\"&K([Fc[l7$$\"0@@@,*[#*)*Fc[l$\"&F\"[F c[l7$$\"0bcc^M#>**Fc[l$\"&7#\\Fc[l7$$\"0!>>>+)f%**Fc[l$\"&>,&Fc[l7$$\" 0gf4x_$f**Fc[l$\"&<-&Fc[l7$$\"0DFF_DF(**Fc[l$\"&E*\\Fc[l7$$\"0!\\\\u#) 4')**Fc[l$\"&%>\\Fc[l7$$\"0gii-r%****Fc[l$\"&U![Fc[l7$$\"0!)zHl@E+\"F0 $\"&*HXFc[l7$$\"0LLL?'H05F0$\"&;Y%Fc[l7$$\"0'oo`2(z+\"F0$\"&.Z%Fc[l7$$ \"0SSSIX1,\"F0$\"&+\\%Fc[l7$$\"0QQj'G385F0$\"&A[%Fc[l7$$\"0OO'G/_:5F0$ \"&MV%Fc[l7$$\"0MM4*z&z,\"F0$\"&0N%Fc[l7$$\"0KKKb&R?5F0$\"&]E%Fc[l7$$ \"0IIb6LG-\"F0$\"&e@%Fc[l7$$\"0GGynq_-\"F0$\"&VB%Fc[l7$$\"0EE,C3x-\"F0 $\"&OK%Fc[l7$$\"0CCC!e9I5F0$\"&HX%Fc[l7$$\"07iu&*y9.\"F0$\"&n^%Fc[l7$$ \"0++D67G.\"F0$\"&&eXFc[l7$$\"0)y`n_9M5F0$\"&Yc%Fc[l7$$\"0wvDUya.\"F0$ \"&?_%Fc[l7$$\"0_^EtW\"Q5F0$\"&NF%Fc[l7$$\"0FFF/63/\"F0$\"&))*QFc[l7$$ \"0?Y-ix9/\"F0$\"&R#QFc[l7$$\"09lx>W@/\"F0$\"&lx$Fc[l7$$\"03%Gv2\"G/\" F0$\"&aw$Fc[l7$$\"0-.GNxM/\"F0$\"&\\w$Fc[l7$$\"0!4%y]5[/\"F0$\"&bw$Fc[ l7$$\"0yyGmVh/\"F0$\"&^x$Fc[l7$$\"0aaH(*4)[5F0$\"&x!QFc[l7$$\"0IIIGw90 \"F0$\"&&=QFc[l7$$\"0utBVxg0\"F0$\"&go$Fc[l7$$\"0<<BFc[l7$$\"0%QQ e&)366F0$\"&6g\"Fc[l7$$\"0UT\"**p9;6F0$\"&vG#Fc[l7$$\"0**)*)Ra?@6F0$\" &^.$Fc[l7$$\"0yx-mMP7\"F0$\"&O&HFc[l7$$\"0cc1)QEE6F0$\"&DL#Fc[l7$$\"0' f%3\\Gv7\"F0$\"&g!=Fc[l7$$\"0NN55$zG6F0$\"&)f6Fc[l7$$\"0uC7rd+8\"F0$\" %'Q%Fc[l7$$\"0999KA88\"F0$!%.GFc[l7$$\"0[ZZ)>ST6F0$!&:=\"Fc[l7$$\"0\"3 3[;[^6F0$!&(o8Fc[l7$$\"033$)\\-R:\"F0$!&ET\"Fc[l7$$\"0ON&[LKc6F0$!&\"3 9Fc[l7$$\"0ji()>W(e6F0$!&![8Fc[l7$$\"0!**)*[];h6F0$!&2D\"Fc[l7$$\"0a.T ZvB;\"F0$!&8?\"Fc[l7$$\"0<<#**eej6F0$!&H;\"Fc[l7$$\"0!3LCjzk6F0$!&79\" Fc[l7$$\"0WW%\\n+m6F0$!&j9\"Fc[l7$$\"0sr'*fF%o6F0$!&NE\"Fc[l7$$\"0**)* )\\%[3<\"F0$!&v`\"Fc[l7$$\"011JXlM<\"F0$!&e#>Fc[l7$$\"098jX#3w6F0$!&$3 @Fc[l7$$\"0@?&f%*py6F0$!&D5#Fc[l7$$\"0GFFY;8=\"F0$!&r3#Fc[l7$$\"0NMfYL R=\"F0$!&V2#Fc[l7$$\"0UT\"p/b'=\"F0$!&P3#Fc[l7$$\"0\\[BZn\"*=\"F0$!&*> @Fc[l7$$\"0cbbZ%y\">\"F0$!&B<#Fc[l7$$\"0po$p'yU>\"F0$!&a@#Fc[l7$$\"0#= =jGx'>\"F0$!&RB#Fc[l7$$\"0&\\*p0n#*>\"F0F\\[r7$$\"0333Dh7F0$!&;*GFc[l7$$\"0AAA6QAA \"F0$!&m)GFc[l7$$\"0..`:)[F7F0$!&)yGFc[l7$$\"0%QQ)>QFB\"F0$!&1*GFc[l7$ $\"0;;;v!\\P7F0$!&#**GFc[l7$$\"0[[[IVAC\"F0$!&%*)GFc[l7$$\"0kk9e>YC\"F 0$!&t)GFc[l7$$\"0!33ee*pC\"F0$!&\"**GFc[l7$$\"0'ppM@P\\7F0$!&_$HFc[l7$ $\"0888T[*yx7F0$! &^:$Fc[l7$$\"0,,,9?GG\"F0$!&O=$Fc[l7$$\"0uuC3^yG\"F0$!&6E$Fc[l7$$\"0[[ [-#)GH\"F0$!&%4LFc[l7$$\"0nnHI\"F0$!&$* H$Fc[l7$$\"0YYrwGaI\"F0F\\cr7$$\"011c6QzI\"F0$!&]G$Fc[l7$$\"0mlSYZ/J\" F0$!&sD$Fc[l7$$\"0DDD\"o&HJ\"F0$!&dA$Fc[l7$$\"0<=8F0$!&$4KFc[l7$$\"0,,^))>3K\"F0$!&jC$Fc[l7$$\"0$HH44WB8F0$! &qI$Fc[l7$$\"0&[[L>1E8F0$!&OO$Fc[l7$$\"0xww&HoG8F0$!&:Q$Fc[l7$$\"0po=) RIJ8F0$!&!QLFc[l7$$\"0hgg+DRL\"F0$!&BD$Fc[l7$$\"0!**)R7`(Q8F0$!&gA$Fc[ l7$$\"0?>>C\"eV8F0$!&wB$Fc[l7$$\"0\\[)f$4%[8F0$!&U=$Fc[l7$$\"0yxxZPKN \"F0$!&V5$Fc[l7$$\"0poV!)4dN\"F0$!&&*4$Fc[l7$$\"0gf48#=e8F0$!&h8$Fc[l7 $$\"0^]vXa1O\"F0$!&k?$Fc[l7$$\"0UTTyEJO\"F0$!&WG$Fc[l7$$\"0LK26*fl8F0$ !&jK$Fc[l7$$\"0CBtVr!o8F0$!&3H$Fc[l7$$\"099RwV0P\"F0$!&(pJFc[l7$$\"000 04;IP\"F0$!&\\.$Fc[l7$$\"0_^^dv%y8F0$!&-.$Fc[l7$$\"0)zzf]$RQ\"F0$!&i-$ Fc[l7$$\"0@@@![m'Q\"F0$!&h(HFc[l7$$\"0WWWa%R*Q\"F0$!&,\"HFc[l7$$\"0onn GC@R\"F0$!&C'GFc[l7$$\"0\"44HS&[R\"F0$!&e'GFc[l7$$\"0PPP\\EYT\"F0$!&%z EFc[l7$$\"0CCCaZ[V\"F0$!&]]#Fc[l7$$\"0\"33G=Tb9F0$!&T=#Fc[l7$$\"0$GG3W Ju9F0$!&h#>Fc[l7$$\"0nmm%RY%\\\"F0$!&LW\"Fc[l7$$\"0baa5gW^\"F0$!&S/\"F c[l7$$\"0)zzz(\\e`\"F0$!%eGFc[l7$$\"0CCC@4#Q:F0$!%PCFc[l7$$\"0]]]ko0a \"F0$!%bFFc[l7$$\"0www2GHa\"F0$!%8NFc[l7$$\"0...^(GX:F0$!%PUFc[l7$$\"0 cbbP1+b\"F0$!%qLFc[l7$$\"0333CDZb\"F0$\"%K8Fc[l7$$\"0iii`Zub\"F0$\"%OX Fc[l7$$\"0<<<$)p,c\"F0$\"%nnFc[l7$$\"0WW%z4`h:F0$\"%@sFc[l7$$\"0srr7#* Gc\"F0$\"%uqFc[l7$$\"0**)*[F`Uc\"F0$\"%FjFc[l7$$\"0EEEU9cc\"F0$\"%e\\F c[l7$$\"0NNN,f5d\"F0$!%/VFc[l7$$\"0WWWg.ld\"F0$!%[\")Fc[l7$$\"077iEg*y :F0$!%`LFc[l7$$\"0!)zz#pT\"e\"F0$\"%!Q'Fc[l7$$\"0[Z(*etQe\"F0$\"&G!>Fc [l7$$\"0:::DIje\"F0$\"&I)GFc[l7$$\"01dpTWpe\"F0$\"&t'HFc[l7$$\"0)*)R#e eve\"F0$\"&w'HFc[l7$$\"0!4%yus\")e\"F0$\"&y'HFc[l7$$\"0#GG8py)e\"F0$\" &a'HFc[l7$$\"0mmTC:+f\"F0$\"&1'HFc[l7$$\"0]]]dV7f\"F0$\"&H&HFc[l7$$\"0 ==oB+Pf\"F0$\"&!HHFc[l7$$\"0'ee)*o:'f\"F0$\"&F#HFc[l7$$\"0//aP=5g\"F0$ \"&7+$Fc[l7$$\"0AAA&)zeg\"F0$\"&k7$Fc[l7$$\"0JJ1f5$3;F0$\"&Y9$Fc[l7$$ \"0SS!H8u5;F0$\"&R5$Fc[l7$$\"0]\\u1sJh\"F0$\"&k,$Fc[l7$$\"0fee!Gg:;F0$ \"&=\"HFc[l7$$\"0YXX5egi\"F0$\"&7W$Fc[l7$$\"0KKKS8lj\"F0$\"&ph$Fc[l7$$ \"0kj8!y8R;F0$\"&/i$Fc[l7$$\"0&\\\\*>i%)[l\"F0$\"&#=PFc[l7$$\"0$GG)e3v l\"F0$\"&:j$Fc[l7$$\"0KJJ%)fqm\"F0$\"&d\"RFc[l7$$\"0!)zz46mn\"F0$\"&`K %Fc[l7$$\"0sr@g#o\"o\"F0$\"&(=VFc[l7$$\"0kjj5ano\"F0$\"&Fx\"F0$\"&We%Fc[l7$$ \"0OOO9^!ys%40 \"=F0$\"&Ka%Fc[l7$$\"0cb0P\"*H\"=F0$\"&;e%Fc[l7$$\"099*oKZ:=F0$\"&!*f% Fc[l7$$\"0tss;bz\"=F0$\"&Fd%Fc[l7$$\"0#==e1*y#=F0$\"&ZW%Fc[l7$$\"0\"44 \\h#y$=F0$\"&mP%Fc[l7$$\"0YX?af.%=F0$\"&1N%Fc[l7$$\"0++]$H*G%=F0$\"&& \\VFc[l7$$\"0aazKEa%=F0$\"&+Q%Fc[l7$$\"0444sfz%=F0$\"&;V%Fc[l7$$\"0kjQ 6$\\]=F0$\"&yZ%Fc[l7$$\"0==o]EI&=F0$\"&(zWFc[l7$$\"0ss(**)fb&=F0$\"&4T %Fc[l7$$\"0FFFH$4e=F0$\"&HH%Fc[l7$$\"0baa7w&z=F0$\"&M7%Fc[l7$$\"0%RRzP F**=F0$\"&\\&RFc[l7$$\"0JJJ*yr=>F0$\"&h!QFc[l7$$\"0222L.&R>F0$\"&6a$Fc [l7$$\"0%RRae4U>F0$\"&Ic$Fc[l7$$\"0!33y$)oW>F0$\"&Td$Fc[l7$$\"0CC*RY)f %>F0$\"&nc$Fc[l7$$\"0nnF0$\"&*\\NFc[l7$$\"056O;x&[>F0$\"&)>NFc[l 7$$\"0aaaUt)\\>F0$\"&B[$Fc[l7$$\"0TT\"\\fY_>F0$\"&0R$Fc[l7$$\"0GGGZe]& >F0$\"&tJ$Fc[l7$$\"0::l*4ld>F0$\"&vH$Fc[l7$$\"0---_V-'>F0$\"&_N$Fc[l7$ $\"0JJ\"3u*['>F0$\"&*)e$Fc[l7$$\"0gggH^&p>F0$\"&Im$Fc[l7$$\"0!**)R=0U( >F0$\"&b?$Fc[l7$$\"0>>>2f)y>F0$\"&w&GFc[l7$$\"\"#F)$\"&-P#Fc[l-%'COLOU RG6&%$RGBGF(F($\"*++++\"!\")-%+AXESLABELSG6$Q\"x6\"Q!Fi^u-%%VIEWG6$;F( Fj]u%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 123 "We can investigate the error obtained by applying polynomial i nterpolation compared with using (partial) Runge-Kutta steps." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 193 "de := diff(y(x),x)=(8*sin(7*x)-3*y(x))/(6*x+1);\nic := y(0)=1;\ng n2 := desolveRK(\{de,ic\},y(x),x=0..2,method=rk56,output=rkstep);\neva lf[15](plot('gn2'(x)-g(x),x=0..2,color=magenta,numpoints=100));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&*& \"\")\"\"\"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F1!\"\"F1,&*&\"\"' F1F,F1F1F1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"! \"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 693 138 138 {PLOTDATA 2 "6&-%'CUR VESG6#7_^l7$$\"\"!F)F(7$$\"0VVVVjO6#!#;$!$z#!#97$$\"0pooo]F&RF-$!$Z*F0 7$$\"0lkkk'*4-'F-$!%28F07$$\"0GGGG_H5)F-$!%9=FC$!%oKF07$$\"0QQQ)zAI?FC$!%IOF07$$\"0'eeeVnw?FC$!%; OF07$$\"0LLLt?J7#FC$!%WOF07$$\"0!333rcp@FC$!%1QF07$$\"0GGG[8g@#FC$!%oS F07$$\"0+++5,$oAFC$!%SSF07$$\"0srrr)e?BFC$!%;SF07$$\"0edd_KnM#FC$!%0SF 07$$\"0WVVLwGP#FCFjp7$$\"0IHH9?!*R#FC$!%@SF07$$\"0:::&R;DCFC$!%lSF07$$ \"0mmmEmwZ#FC$!%lVF07$$\"0===eo,`#FC$!%=XF07$$\"0qpp*3n#e#FC$!%!\\%F07 $$\"0@@@@t^j#FC$!%lWF07$$\"0mmm1r/m#FC$!%eWF07$$\"0777#*odo#FC$!%hWF07 $$\"0eddxm5r#FC$!%zWF07$$\"0...jkjt#FC$!%GXF07$$\"0%RRR.'py#FC$!%3[F07 $$\"0&[[[gbPGFC$!%-^F07$$\"0&\\\\*z,N)GFC$!%v]F07$$\"0000bZ%HHFC$!%^]F 07$$\"0:::I$RvHFC$!%I]F07$$\"0DDD0R8-$FC$!%G]F07$$\"0kjj$pgIJFC$!%:aF0 7$$\"0---#[()RKFC$!%heF07$$\"0a``$p:'G$FC$!%MeF07$$\"00000RCL$FC$!%4eF 07$$\"0ccc;@(yLFC$!%(z&F07$$\"0333G.]U$FC$!%AeF07$$\"0eee[xE`$FC$!%?kF 07$$\"0444p^.k$FC$!%erF07$$\"0qqqghct$FC$!%'4(F07$$\"0KKK_r4$QFC$!%jqF 07$$\"0qqqgTb$RFC$!%\\sF07$$\"0444p6,/%FC$!%nwF07$$\"0%RRRroRTFC$!%,wF 07$$\"0zyyei#RUFC$!%QvF07$$\"0]]]&3@\"H%FC$!%2vF07$$\"0AAA7fJM%FC$!%ou F07$$\"0%RR*Q2^R%FC$!%+uF07$$\"0mlllbqW%FC$!%SsF07$$\"0\"333^YUXFC$!%h rF07$$\"0'fffX(yj%FC$!%0rF07$$\"0555bI$*o%FC$!%nqF07$$\"0CCCa'ySZFC$!% +qF07$$\"0QQQ`UAz%FC$!%foF07$$\"0____)pV[FC$!%RlF07$$\"0)zzz<\\d]FC$!% %4'F07$$\"0kjjV*fV_FC$!%HbF07$$\"0SSS!3gWaFC$!%I[F07$$\"0[[[)[D_cFC$!% ?UF07$$\"0444*QSbeFC$!%EKF07$$\"0!==oJa/fFC$!%3KF07$$\"0baaW#o`fFC$!%n JF07$$\"0IFFs@G+'FC$!&!eIFC7$$\"0++++h>0'FC$!&=y#FC7$$\"0&RR*y@l5'FC$! &D/#FC7$$\"0!zyyD3hhFC$!&J,\"FC7$$\"0&==oLk:iFC$!&*45FC7$$\"0wvv:/-F'F C$!&c+\"FC7$$\"0NNNXH#>jFC$!%)***FC7$$\"0&\\\\\\ZDojFC$!%(z*FC7$$\"0ba a/!G8+P(FC$\"&ud%FC7$$\"0XXXl&FC7$$\"0bbblX/*Q)FC$\"&>y&FC7$ $\"0000&G-\"\\)FC$\"&vv&FC7$$\"0geeoKZe)FC$\"&jv&FC7$$\"0777_U%y')FC$ \"&Rt&FC7$$\"0vwwcWey)FC$\"&Nq&FC7$$\"0TTThYK*))FC$\"&]l&FC7$$\"0bbb&* p`3*FC$\"&>a&FC7$$\"0\"444N@!H*FC$\"&RP&FC7$$\"0IFxMnCI*FC$\"&kL&FC7$$ \"0ljj=@ZJ*FC$\"&uI&FC7$$\"0++]-vpK*FC$\"&XI&FC7$$\"0NOO')G#R$*FC$\"&9 I&FC7$$\"0544aOPO*FC$\"&`H&FC7$$\"0!===UC)Q*FC$\"&'*G&FC7$$\"0DFFdfsV* FC$\"&zF&FC7$$\"0tss#\\F'[*FC$\"&ZE&FC7$$\"0&HHz,qS&*FC$\"&@C&FC7$$\"0 :88VD^f*FC$\"&'*=&FC7$$\"0NLLo]&\\'*FC$\"&'\\]FC7$$\"0```$f(Rq*FC$\"&4 %\\FC7$$\"0NPPZK#)z*FC$\"&-#\\FC7$$\"0@@@,*[#*)*FC$\"&$*)[FC7$$\"0gii- r%****FC$\"&*)p%FC7$$\"0SSSIX1,\"F0$\"&5X%FC7$$\"0OO'G/_:5F0$\"&?W%FC7 $$\"0KKKb&R?5F0$\"&3V%FC7$$\"0GGynq_-\"F0$\"&ST%FC7$$\"0CCC!e9I5F0$\"& SP%FC7$$\"0FFF/63/\"F0$\"&d%RFC7$$\"0IIIGw90\"F0$\"&?v$FC7$$\"0utBVxg0 \"F0$\"&\\u$FC7$$\"0<<ST6F0$!&%>7FC7$$\"099k\"=WY6F0$!&q@\"FC7$$\"0\"33[;[^6F0$!&y@ \"FC7$$\"0**)*)\\%[3<\"F0$!&/f\"FC7$$\"0cbbZ%y\">\"F0$!&\")4#FC7$$\"0h gg-Q<@\"F0$!&)[BFC7$$\"0UT\"p!))p@\"F0$!&iv#FC7$$\"0AAA6QAA\"F0$!&'))G FC7$$\"0..`:)[F7F0$!&I)GFC7$$\"0%QQ)>QFB\"F0$!&z(GFC7$$\"0;;;v!\\P7F0$ !&^(GFC7$$\"0[[[IVAC\"F0$!&*yGFC7$$\"0kk9e>YC\"F0$!&t)GFC7$$\"0!33ee*p C\"F0$!&B!HFC7$$\"0'ppM@P\\7F0$!&t#HFC7$$\"0888T[$FC7$$\"0a``DeFF\"F0$!&<>$ FC7$$\"0GFx>*yx7F0$!&l=$FC7$$\"0,,,9?GG\"F0$!&o=$FC7$$\"0uuC3^yG\"F0$! &v>$FC7$$\"0[[[-#)GH\"F0$!&DB$FC7$$\"033LP\"R&H\"F0$!&eE$FC7$$\"0nnHI\"F0$!&!)G$FC7$$ \"011c6QzI\"F0$!&DG$FC7$$\"0DDD\"o&HJ\"F0$!&pF$FC7$$\"0$HH44WB8F0$!&^E $FC7$$\"0hgg+DRL\"F0$!&cB$FC7$$\"0?>>C\"eV8F0$!&k@$FC7$$\"0yxxZPKN\"F0 $!&\\?$FC7$$\"0gf48#=e8F0$!&u>$FC7$$\"0UTTyEJO\"F0$!&4=$FC7$$\"0LK26*f l8F0$!&`;$FC7$$\"0CBtVr!o8F0$!&29$FC7$$\"099RwV0P\"F0$!&I5$FC7$$\"0000 4;IP\"F0$!&]/$FC7$$\"0)zzf]$RQ\"F0$!&+,$FC7$$\"0\"44HS&[R\"F0$!&^*HFC7 $$\"0___9(z*R\"F0$!&p(HFC7$$\"0999ESZS\"F0$!&-$HFC7$$\"0wvvP$o49F0$!&9 \"GFC7$$\"0PPP\\EYT\"F0$!&yn#FC7$$\"0!33=qtC9F0$!&#oEFC7$$\"0CCCaZ[V\" F0$!&Cl#FC7$$\"0JJ\"y!=uV\"F0$!&-k#FC7$$\"0QQQh))*R9F0$!&8i#FC7$$\"0XX &\\\"fDW\"F0$!&pe#FC7$$\"0___oH^W\"F0$!&D`#FC7$$\"0mmmvq-X\"F0$!&-J#FC 7$$\"0\"33G=Tb9F0$!&V<#FC7$$\"0#===J'[Y\"F0$!&'o@FC7$$\"0$GG3WJu9F0$!& C:#FC7$$\"0\"3e+J$oZ\"F0$!&09#FC7$$\"0zyGz^$z9F0$!&\">@FC7$$\"0xw^[q=[ \"F0$!&:3#FC7$$\"0vuu<*Q%[\"F0$!&J-#FC7$$\"0rq?cE%*[\"F0$!&By\"FC7$$\" 0nmm%RY%\\\"F0$!&KW\"FC7$$\"0hgg-iW]\"F0$!&*Q9FC7$$\"0baa5gW^\"F0$!&dU \"FC7$$\"0[ZZ\"Q8<:F0$!&]T\"FC7$$\"0SSS_2)>:F0$!&6R\"FC7$$\"0LLLB\"[A: F0$!&gN\"FC7$$\"0EEE%\\:D:F0$!&#*G\"FC7$$\"0777O-0`\"F0$!&$>5FC7$$\"0) zzz(\\e`\"F0$!%RQFC7$$\"0aazjRk`\"F0$!%*y#FC7$$\"066h\\Hq`\"F0$!%TCFC7 $$\"0onUN>w`\"F0$!%HCFC7$$\"0CCC@4#Q:F0$!%QCFC7$$\"0PP(G*)QR:F0$!%RCFC 7$$\"0]]]ko0a\"F0$!%DCFC7$$\"0www2GHa\"F0$!%CCFC7$$\"0...^(GX:F0$!%SCF C7$$\"0cbbP1+b\"F0$!%ICFC7$$\"0333CDZb\"F0$!%\"R#FC7$$\"0<<<$)p,c\"F0$ !%)G#FC7$$\"0EEEU9cc\"F0$!%VFC7$$\"0WWWg.ld\" F0$\"%\"z$FC7$$\"077iEg*y:F0$\"%!*pFC7$$\"0!)zz#pT\"e\"F0$\"&=:\"FC7$$ \"0[Z(*etQe\"F0$\"&$ziVFC7$$\"0ZZZ6(*op\"F0$ \"&-K%FC7$$\"0'ff*p&z1UFC7$$\"0SR*Q0]%)= F0$\"&Y?%FC7$$\"0CCC&\\U*)=F0$\"&t;%FC7$$\"044fO\\V*=F0$\"&Q2%FC7$$\"0 %RRzPF**=F0$\"&U&RFC7$$\"0iii$e**3>F0$\"&W%RFC7$$\"0JJJ*yr=>F0$\"&\"HR FC7$$\"0GGG2;8#>F0$\"&(>RFC7$$\"0DDDD9R#>F0$\"&f!RFC7$$\"0AAAV7l#>F0$ \"&&yQFC7$$\"0>>>h5\"H>F0$\"&j$QFC7$$\"0888(pIM>F0$\"&(eOFC7$$\"0222L. &R>F0$\"&Q`$FC7$$\"0aaaUt)\\>F0$\"&e_$FC7$$\"0---_V-'>F0$\"&G]$FC7$$\" 0mmTYqD'>F0$\"&r[$FC7$$\"0JJ\"3u*['>F0$\"&YY$FC7$$\"0'f4_VAn>F0$\"&tU$ FC7$$\"0gggH^&p>F0$\"&,P$FC7$$\"0!**)R=0U(>F0$\"&\\:$FC7$$\"0>>>2f)y>F 0$\"&!eGFC7$$\"0gff`H%*)>F0$\"&(\\GFC7$$\"\"#F)$\"&]$GFC-%'COLOURG6&%$ RGBG$\"*++++\"!\")F(Fc[q-%+AXESLABELSG6$Q\"x6\"Q!Fj[q-%%VIEWG6$;F(F[[q %(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "C urve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph compares the two m ethods of interpolation in terms of their errors. The discrete points \+ give the errors at the interpolation points whose horizontal location \+ is determined by extracting the " }{TEXT 296 1 "x" }{TEXT -1 38 " coor dinates from a discrete solution." }}{PARA 0 "" 0 "" {TEXT -1 74 "The \+ error curve for the polynomial interpolation obtained via the option \+ \"" }{TEXT 262 15 "output=rkinterp" }{TEXT -1 14 "\" is shown in " } {TEXT 261 4 "blue" }{TEXT -1 107 " while the error curve for interpola tion obtained by performing Runge-Kutta steps obtained via the option \+ \"" }{TEXT 262 13 "output=rkstep" }{TEXT -1 15 "\" is shown in " } {TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 575 "de := diff(y(x),x)=(8*sin (7*x)-3*y(x))/(6*x+1);\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},x=0. .1,method=rk56,output=rkinterp):\ngn2 := desolveRK(\{de,ic\},x=0..1,me thod=rk56,output=rkstep):\npts := desolveRK(\{de,ic\},x=0..1,method=rk 56,output=points):\npts2 := [seq([pts[i,1],evalf[18](gn2(pts[i,1])-g(p ts[i,1]))],i=1..nops(pts))]:\np1 := plot([pts2$3],style=point,symbol=[ circle,diamond,cross],color=[black,coral$2]):\np2 := evalf[18](plot([' gn1'(x)-g(x),'gn2'(x)-g(x)],x=0..0.65,\n color=[blue,magen ta],numpoints=100)):\nplots[display]([p1,p2],view=[0..0.65,-1e-10..1e- 11]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"x GF,*&,&*&\"\")\"\"\"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F1!\"\"F1 ,&*&\"\"'F1F,F1F1F1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\" yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 704 277 277 {PLOTDATA 2 "6)-%'CURVESG6&7C7$$\"\"!F)F(7$$\"3-+++++++5!#>$!3++++++V%>\"!#H7$$\"3 -+++(R\\IH#F-$!3m*********>lf&F07$$\"3%)*****\\DfKn$F-$!3]+++++GZ&*F07 $$\"3y*******4&zb^F-$!3/++++]]E8!#G7$$\"3m*****RBs(\\nF-$!3)*********> 2z;F@7$$\"3U+++SVXl%)F-$!31++++I,++++S(fK$F@7$$\"3(*******og?G>FN$!35++ +++G\"o$F@7$$\"3/+++LO\"*)>#FN$!3!**********\\f2%F@7$$\"3/+++I`I#\\#FN $!3w********4!y`%F@7$$\"3:+++T\"*Q7GFN$!3x********pA:^F@7$$\"3)******* eD%p;$FN$!3b++++!QT!fF@7$$\"31+++k<4wNFN$!3Z++++q%>?(F@7$$\"3))*****zr Ok*RFN$!3O++++I$ep(F@7$$\"37+++6va_WFN$!3@++++S?8sF@7$$\"3!)*****\\>nY ([FN$!3i++++5)>='F@7$$\"3!******R1N*)G&FN$!3=++++5%f)[F@7$$\"3v*****Hf q!3dFN$!3K++++S.fKF@7$$\"3?+++vI$[9'FN$!3)********z[[,\"F@7$$\"3`+++F, HGmFN$\"3))*******4!3'H$F@7$$\"3!)*****H/&GRqFN$\"3=++++4xPWF@7$$\"3F+ ++&F@7$$\"3I+++i=#p%yFN$\"3p********39:dF@7$$\"3[ +++XdWF#)FN$\"3Z++++bVGeF@7$$\"3G+++.F#Qf)FN$\"35++++wdddF@7$$\"3c**** *>K!*H&*)FN$\"3/++++onwbF@7$$\"3Z******ovF5$*FN$\"3!********f-&3`F@7$$ \"3Y+++4mqq'*FN$\"3!********z'[[\\F@7$$\"\"\"F)$\"3)*********f^(p%F@-% 'COLOURG6&%$RGBGF)F)F)-%'SYMBOLG6#%'CIRCLEG-%&STYLEG6#%&POINTG-F$6&F&- Fiu6&F[v$\"*++++\"!\")$\")AR!)\\FjvF(-F]v6#%(DIAMONDGF`v-F$6&F&Ffv-F]v 6#%&CROSSGF`v-F$6$7\\glF'7$$\"3+----xv'e)!#@$\"%*\\&!#<7$$\"3SSSSS:N<< !#?$\"&N>#F^x7$$\"3]]]]D%*oY@Fbx$\"&aK#F^x7$$\"3gggg5t-wDFbx$\"&yX\"F^ x7$$\"3qqqq&>l`+$Fbx$!%z[F^x7$$\"3\"33333.ZV$Fbx$!&AG$F^x7$$\"3+,,,^)y LH%Fbx$!&F-$\"'fiKF^x7$$\"3cbbb0G)f7#F-$\"'\"oh#F^x7$$\"3,, ,,,<9&H#F-$!'F'f&F^x7$$\"3QPP([UJuL#F-$!'(oe&F^x7$$\"3uttt[6szBF-$!')z ]&F^x7$$\"3555gs3,ACF-$!'RO`F^x7$$\"3YYYY'f+VY#F-$!'g2^F^x7$$\"3>>>>W+ ))[DF-$!'.WZF^x7$$\"3#>>>>\\fMj#F-$!'SA\\F^x7$$\"3<<>p\"y+fM$F-$!&)=jF^x7$$\"3YXXX?C#\\Q$F-$!&Td\"F^ x7$$\"3fee$)RKV/MF-$!&A=\"F^x7$$\"3srr@fS%RU$F-$!&*eAF^x7$$\"3&[[)fy[X VMF-$!&W([F^x7$$\"3)zzzzplHY$F-$!&x0*F^x7$$\"3]]]]v*35a$F-$!'j2SF^x7$$ \"3....`A0>OF-$!'E3\")F^x7$$\"3IHHz\"*Q2eOF-$!'L*R*F^x7$$\"3cbbbIb4(p$ F-$!'.W&*F^x7$$\"3#===$pr6OPF-$!'4;&*F^x7$$\"333333)Q^x$F-$!';D%*F^x7$ $\"3gggg&3#=`QF-$!'st!*F^x7$$\"38888j`AJRF-$!'nH()F^x7$$\"3hggg5(*pxXF -$!(Un5\"F^x7$$\"3cbbb0WGY_F-$!(V'=8F^x7$$\"3]ZZZs%*eH`F-$!()z(G\"F^x7 $$\"3SRRRRX*GT&F-$!(y.D\"F^x7$$\"3IJJJ1'*>'\\&F-$!(]$Q7F^x7$$\"3DBBBtY ]zbF-$!(\")\\F\"F^x7$$\"352222[6YdF-$!(SX[\"F^x7$$\"3\"4444%\\s7fF-$!( \"Gy;F^x7$$\"3000bUR5%3'F-$!(;Ac\"F^x7$$\"3?>>>WH[biF-$!(+.6\"F^x7$$\" 3IEE,XC'oU'F-$!'RUyF^x7$$\"3SSSlY9b7lF-$ !'([q)F^x7$$\"3[ZZZZ4C)f'F-$!('[e6F^x7$$\"3&RRRkI;Pn'F-$!(=5\\\"F^x7$$ \"3SSSSl;>\\nF-$!(x!z;F^x7$$\"3!pooV-nY#oF-$!(\"eu;F^x7$$\"3NLLL$QU,!p F-$!(hXl\"F^x7$$\"3!)zzHUxhvpF-$!(I@i\"F^x7$$\"3IEEE,J4^qF-$!(EYf\"F^x 7$$\"3vssAg%ol7(F-$!(k1f\"F^x7$$\"3?>>>>Q/-sF-$!(P@i\"F^x7$$\"3++++v&y >P(F-$!(\\=\"=F^x7$$\"3!3333L8>a(F-$!(fy+#F^x7$$\"3+,,w>qR%e(F-$!()oE? F^x7$$\"3?@@r32)oi(F-$!(!GE?F^x7$$\"3STTm(Rk$pwF-$!(\\X+#F^x7$$\"3ghhh '3[=r(F-$!(V1'>F^x7$$\"3+--_ka\"oz(F-$!(J,\"=F^x7$$\"3VUUUUGy\")yF-$!( Dzf\"F^x7$$\"3baaa/\"*4nzF-$!(?-P\"F^x7$$\"3lmmmm`T_!)F-$!(3L>\"F^x7$$ \"3qpp>KWut!)F-$!(Y`;\"F^x7$$\"3qsss(\\t]4)F-$!(!)f9\"F^x7$$\"3vvvDjDS ;\")F-$!(0h8\"F^x7$$\"3!)yyyG;tP\")F-$!(%\\O6F^x7$$\"3&[[[)f(*Q!=)F-$! (t-<\"F^x7$$\"3!4444*y/B#)F-$!(\"[\\7F^x7$$\"3:::::/o$R)F-$!(M$p=F^x7$ $\"3SRRRRHJk&)F-$!(Y!4?F^x7$$\"3qmmmm4`Y')F-$!(HX)>F^x7$$\"3&RRRR**[(G ()F-$!(Y3&>F^x7$$\"3?@@@@q'4\"))F-$!(hq#>F^x7$$\"3][[[[]=$*))F-$!(-6$> F^x7$$\"30....6id!*F-$!(G'\\?F^x7$$\"3eddddr0A#*F-$!(/2D#F^x7$$\"3qrr' H+>nH*F-$!(EGK#F^x7$$\"3&eee$[3Qr$*F-$!(ltN#F^x7$$\"3!HHa5x6(3%*F-$!(! *fN#F^x7$$\"3+++v$pUgW*F-$!(o0M#F^x7$$\"352dW;OP$[*F-$!(]0J#F^x7$$\"3: 999RXq?&*F-$!())fE#F^x7$$\"3XUU#*H#G+n*F-$!(cp'>F^x7$$\"3rqqq?>N>)*F-$ !(7Ch\"F^x7$$\"3#===VDZu,\"FN$!(+G(>F^x7$$\"3dccc;$fH0\"FN$!(6QI#F^x7$ $\"3yxxFg,[g5FN$!(z[F#F^x7$$\"3+**)*)R+,!o5FN$!(/UD#F^x7$$\"3@??qZ=_v5 FN$!(SGD#F^x7$$\"3UTTT\"pUI3\"FN$!(>wF#F^x7$$\"3%QQQ)yV3)4\"FN$!(sQS#F ^x7$$\"3EEEEmg786FN$!(CZd#F^x7$$\"3!)zHU&fu=7\"FN$!(m-l#F^x7$$\"3LLLeC JiI6FN$!(E(zEF^x7$$\"3'ooVPlr$R6FN$!(#zYEF^x7$$\"3SSS!H=?\"[6FN$!(vfa# F^x7$$\"3[ZZATshl6FN$!(i'*=#F^x7$$\"3baaa*H9J=\"FN$!(B$[=F^x7$$\"3!)zz HA+497FN$!(#yUAF^x7$$\"30000Xd1X7FN$!(7Il#F^x7$$\"3utBOk?c`7FN$!(eri#F ^x7$$\"3UUUn$Qe?E\"FN$!(#\\'f#F^x7$$\"366h)Hqa0F\"FN$!(8[d#F^x7$$\"3!) zzHA50z7FN$!(tYd#F^x7$$\"3=<<#4mVgH\"FN$!(+?'Q\"FN$!()y\"H#F^x7$$ \"3999*y_VYR\"FN$!(Im;#F^x7$$\"3;;\"*fCV'))R\"FN$!(x58#F^x7$$\"3==oI@^ 3.9FN$!(t&=@F^x7$$\"3??X,=fI29FN$!(!*>8#F^x7$$\"3AAAs9n_69FN$!(#3t@F^x 7$$\"3IIIb,*4%G9FN$!(/xe#F^x7$$\"3QQQQ)3$HX9FN$!(RZ*HF^x7$$\"3WW%>j5XI X\"FN$!(=&))HF^x7$$\"3]]]DCrzg9FN$!(/u(HF^x7$$\"3cc1>U\"\\&o9FN$!(5j&H F^x7$$\"3iii7g6Iw9FN$!(c*HHF^x7$$\"3uuu*f>0=\\\"FN$!($4%*GF^x7$$\"3(oo o=B4t]\"FN$!(Yi#HF^x7$$\"3$GGy!HC.C:FN$!(7.0$F^x7$$\"3zyyGEcvS:FN$!(]@ @$F^x7$$\"3xwE*[A<\"\\:FN$!(;mF$F^x7$$\"3vuu\\B)yub\"FN$!()z7LF^x7$$\" 3ut)*zA'f;c\"FN$!(1pJ$F^x7$$\"3tsA5A/%ec\"FN$!(l.J$F^x7$$\"3srYS@7-q:F N$!(jDH$F^x7$$\"3rqqq???u:FN$!(YKE$F^x7$$\"3322dCM%*3;FN$!(3hp#F^x7$$ \"3WVVVG[oV;FN$!(9Fa#F^x7$$\"3/..`vg!)e;FN$!(6G\"HF^x7$$\"3jiiiAt#Rn\" FN$!(iKI$F^x7$$\"3AAAsp&[!*o\"FN$!(%))=LF^x7$$\"3#===o\")pTq\"FN$!(NRG $F^x7$$\"3]]+Q(\\NBr\"FN$!(jxD$F^x7$$\"3>>>%z<,0s\"FN$!(@eB$F^x7$$\"3) yy.&eomGw#GF^x7$$\"3UUUFN$!(]V8$F^x7$$\"3#44f'Hl(*=>FN$!(!4nNF^x7$$\"3GFFx%zY\\$> FN$!((4yOF^x7$$\"3kjj))fq\"4&>FN$!(1Ql$F^x7$$\"3++++Dt)o'>FN$!(Oug$F^x 7$$\"3::lF`Mvv>FN$!(5je$F^x7$$\"3IIIb\"e>Y)>FN$!(B#yNF^x7$$\"3XX&H)4d[ $*>FN$!(F')e$F^x7$$\"3ggg5Q=N-?FN$!(())>OF^x7$$\"3!44fY4%3??FN$!(_st$F ^x7$$\"3@@@@^j\"y.#FN$!(f])QF^x7$$\"3cbb!='HyX?FN$!(J<%RF^x7$$\"3!**)* )Rs&\\P0#FN$!(!=#)RF^x7$$\"3CCC*H=;<1#FN$!(y++%F^x7$$\"3eeee$z#op?FN$! (W1*RF^x7$$\"3FFFx9gh&3#FN$!(F=)QF^x7$$\"3'ffffB\\:5#FN$!(Lzm$F^x7$$\" 3YXXX]8c=@FN$!(\">#R$F^x7$$\"3&\\\\\\\\Ytb8#FN$!(Q\")=$F^x7$$\"3qpp>A& zS9#FN$!(Cj:$F^x7$$\"3WWWWzbe_@FN$!(c,>$F^x7$$\"3>>>pO;4h@FN$!(#z&H$F^ x7$$\"3%RRRRp(fp@FN$!(h#oMF^x7$$\"3#>>p\")>8]=#FN$!(9)oQF^x7$$\"3!**)* )R-(G/?#FN$!(c[2%F^x7$$\"3)yyGm?We@#FN$!(n?1%F^x7$$\"3'eee3rf7B#FN$!(1 l-%F^x7$$\"3$HH/)>joRAFN$!(+D+%F^x7$$\"3+++vGH6[AFN$!(%*>)RF^x7$$\"322 dpP&RlD#FN$!(n.(RF^x7$$\"3999kYh'\\E#FN$!(6>(RF^x7$$\"3GGG`k$>=G#FN$!( ]G-%F^x7$$\"3VUUU#es')H#FN$!(!3JTF^x7$$\"3#33eq9IXJ#FN$!(.cD%F^x7$$\"3 ?>>p6xQIBFN$!(S(eVF^x7$$\"3RQ)3S\\;$QBFN$!(E$)Q%F^x7$$\"3eddKw_CYBFN$! ()*pR%F^x7$$\"3=SRF^x7$$\"3tsssPdSGCFN$!(V]d$F^x7$$\"3cbb0Qt\"3Y#FN$!(HP\"RF^x7 $$\"3RQQQQ*GK\\#FN$!(>t`%F^x7$$\"3onn#G 4hDFN$!(yjU%F^x7$$\"3KKK#[JtPf#FN$!(xIa%F^x7$$\"3onnn2QXEEFN$!(:l#FN$!(\"pq[F^x7$$\"3xwwwJV()fEFN$!(l3'[F^x7$$\"3KJJ\"Qf%ewEFN$ !(!RoZF^x7$$\"3'eeee&[H$p#FN$!(3!*e%F^x7$$\"3vuu\\[n')4FFN$!(*fkVF^x7$ $\"3kjj8T'Qks#FN$!(f/;%F^x7$$\"333eX(eCZt#FN$!(C94%F^x7$$\"3`__xL0,VFF N$!(f!eSF^x7$$\"3wu\\$p]`ru#FN$!(]v0%F^x7$$\"3)pp%4!['H^FFN$!(D!pSF^x7 $$\"3?>WD`%Rav#FN$!(KJ4%F^x7$$\"3UTTTECefFFN$!(a-8%F^x7$$\"3TSS!H7Q+z# FN$!(9Du%F^x7$$\"3SRRR>Q\\?GFN$!()36^F^x7$$\"3]\\\\\\%[*RbGFN$!(D:#HFN$!(h65&F^x7$$\"3cbbbN _u_HFN$!(i:K&F^x7$$\"3/..Gu()QpHFN$!(o_U&F^x7$$\"3^]]+8B.')HFN$!(y!yaF ^x7$$\"3CCuO#3aV*HFN$!(quZ&F^x7$$\"3)zzH<&en-IFN$!(KjX&F^x7$$\"3sr@4@w *4,$FN$!()=9aF^x7$$\"3YXXX!R>$>IFN$!(\")=N&F^x7$$\"3#4444Pz60$FN$!(0a) \\F^x7$$\"3POOO^$RI3$FN$!(b.o%F^x7$$\"3?>p\"[X$)=4$FN$!(\\lm%F^x7$$\"3 ---Fevs+JFN$!(;(*p%F^x7$$\"3&[[B$FN$!(;l'eF^x7$ $\"3%RRR*G*e]@$FN$!(Gk#eF^x7$$\"3%QQ)e<7vBKFN$!(>A!eF^x7$$\"3uttB1NWKK FN$!(T3y&F^x7$$\"3kjj)[zN6C$FN$!(q`w&F^x7$$\"3a```$3G)\\KFN$!($\\edF^x 7$$\"3WVV=s._eKFN$!($GidF^x7$$\"3MLL$3m7sE$FN$!(h!ydF^x7$$\"3CBB[\\\\! fF$FN$!($H1eF^x7$$\"38888Qsf%G$FN$!('eYeF^x7$$\"3]]]+[bG;LFN$!(H\"ogF^ x7$$\"3)yyyy&Q(zM$FN$!(6cH'F^x7$$\"3++]il$RmN$FN$!(ZgL'F^x7$$\"3777Pt[ IlLFN$!(+6O'F^x7$$\"3CCu6\"QqRP$FN$!([%ojF^x7$$\"3OOO')))ej#Q$FN$!(QlN 'F^x7$$\"3gggN/p'**R$FN$!(SMF'F^x7$$\"3&[[[)>zHhF^x7$$\"3333 e!R0sW$FN$!(N2x&F^x7$$\"3JJJJhG6xMFN$!(wF`&F^x7$$\"3gff%39Gc[$FN$!(Wk_ &F^x7$$\"3)yyy.UVT\\$FN$!((febF^x7$$\"3;;;\"**peE]$FN$!(jLj&F^x7$$\"3W WWWzR<6NFN$!(EFv&F^x7$$\"3,,,^QX?GNFN$!(n!=hF^x7$$\"3eddd(4N_a$FN$!(+ \")f'F^x7$$\"3(oooox&ohNFN$!(yU.(F^x7$$\"3;;;;ck8yNFN$!(,/?(F^x7$$\"3Y XXXNre%f$FN$!(V')=(F^x7$$\"3vuuu9y.6OFN$!(%=srF^x7$$\"3'ff4suxui$FN$!( 3?:(F^x7$$\"3=<rF^x7$$\"3$HHH/Xc&4PFN$!(#H^rF^x7$$\"3EEEEc`JUPFN$!(U 2@(F^x7$$\"3**)*)RF)30ePFN$!(#HOsF^x7$$\"3srr@4kytPFN$!(:HD(F^x7$$\"3W WWpN>_*y$FN$!(IoD(F^x7$$\"3<<<=(F^x7$$\"3cbbbX&*HtQFN$!()[6rF^x7$$\"3544M0=^*)QFN$!(ZL5(F^x7$$\"3 jii7lSs0RFN$!(qn7(F^x7$$\"3;;;\"\\KO>#RFN$!(:&*=(F^x7$$\"3qppp%e[\"QRF N$!(qHH(F^x7$$\"3AAAskQFsRFN$!(4`e(F^x7$$\"3vuuuW\"*R1SFN$!(`')o(F^x7$ $\"3wvvvS2HPSFN$!(;(ywF^x7$$\"3xwwwOB=oSFN$!(Eyo(F^x7$$\"31000NGD&3%FN $!(#o(o(F^x7$$\"3MLLLLLK-TFN$!(r]n(F^x7$$\"3ihhhJQR>TFN$!('*fk(F^x7$$ \"3!**)*)*)HVYOTFN$!(f,g(F^x7$$\"3$GGG`Xl\"pTFN$!(;:[(F^x7$$\"3wvvv!em =?%FN$!(UIP(F^x7$$\"3]\\\\uXt<=UFN$!(g_M(F^x7$$\"3CBBt5\")[MUFN$!(>aM( F^x7$$\"3)pp>d())z]UFN$!(`!ytF^x7$$\"3rqqqS'4rE%FN$!($pVuF^x7$$\"3???? bH=,VFN$!(NAm(F^x7$$\"3qppppiDNVFN$!(G-*yF^x7$$\"3rq?Lh>5VVFN$!(Rg#zF^ x7$$\"3srr'HlZ4N%FN$!(L2&zF^x7$$\"3tsAgWLzeVFN$!(*>izF^x7$$\"3uttBO!Rm O%FN$!(;'ezF^x7$$\"3wvv]>/L#Q%FN$!(;8!zF^x7$$\"3yxxx-=-)R%FN$!(+ex(F^x 7$$\"3'fff%[?;IWFN$!(iQQ(F^x7$$\"39999%H-BY%FN$!(Ru?(F^x7$$\"3CCCC>c/! [%FN$!(f??(F^x7$$\"3MMMMW*)y(\\%FN$!(4&4sF^x7$$\"3WWWWpA`:XFN$!(PAA(F^ x7$$\"3baaa%fvK`%FN$!(GnA(F^x7$$\"33222A2M\\XFN$!(CL@(F^x7$$\"3gfff\\e SlXFN$!(&yxrF^x7$$\"37777x4Z\"e%FN$!(I*>rF^x7$$\"3lkkk/h`(f%FN$!(ZZ/(F ^x7$$\"3EEEw3`RIYFN$!(k&zoF^x7$$\"3)yyyG^aKm%FN$!($)*)y'F^x7$$\"3onn#R v3;n%FN$!(T#*y'F^x7$$\"3[ZZ(\\*H'*zYFN$!()p+oF^x7$$\"3GFF-OsJ)o%FN$!() [BoF^x7$$\"33222x9n'p%FN$!(Hs&oF^x7$$\"3omm;f*zLr%FN$!(AK&pF^x7$$\"3FE EET%)3IZFN$!(rU2(F^x7$$\"3onnn(yYau%FN$!(vz=(F^x7$$\"35444M^!3w%FN$!(] /G(F^x7$$\"3!)zzH2V[oZFN$!(63J(F^x7$$\"3^]]]![jhx%FN$!(tjK(F^x7$$\"3A@ @r`E%Qy%FN$!(GUK(F^x7$$\"3#>>>p#=_\"z%FN$!(x=I(F^x7$$\"3IHHzE[EC[FN$!( KT&pF^x7$$\"3nmmmEy+d[FN$!(y-N'F^x7$$\"3UUU#\\FN$!(u$)='F^x7$$ \"39888`WPR\\FN$!(IY?'F^x7$$\"3a```jNvc\\FN$!(W*3iF^x7$$\"3uttt=JWl\\F N$!(hC?'F^x7$$\"3%RRRRnKT(\\FN$!(Q()='F^x7$$\"39999HA#G)\\FN$!('GnhF^x 7$$\"3NMMM%y6:*\\FN$!(j\"QhF^x7$$\"3][[[3W=A]FN$!(\"H()fF^x7$$\"3jiiiK q&G0&FN$!(H?#eF^x7$$\"3NNN&G\\/<1&FN$!(mfy&F^x7$$\"35333`>bq]FN$!(E%fd F^x7$$\"3!333LT*Rz]FN$!(AVu&F^x7$$\"3b```toC)3&FN$!((3UdF^x7$$\"3+**)* )RzTf5&FN$!(k)ydF^x7$$\"3XWWW9njB^FN$!(uw'eF^x7$$\"3XUUU&4\">_FN$!(wk5'F^x7$$\"3//// >\"42D&FN$!(F_`&F^x7$$\"3lllSz*)pn_FN$!(KD:&F^x7$$\"3IFFxR))o%G&FN$!(% *p*[F^x7$$\"3!*)))Q,qy;I&FN$!(r3)[F^x7$$\"3^]]]g&o'=`FN$!(*R$)[F^x7$$ \"3&eee$[rsN`FN$!(c/!\\F^x7$$\"3?@@@Ody_`FN$!(_;#\\F^x7$$\"3bcc1CV%)p` FN$!(,7$\\F^x7$$\"3#>>>>\"H!pQ&FN$!(Ha\"\\F^x7$$\"3qnn[&FN$!($3\\WF^x7$$\"3bbbIMKV)\\&FN$!((p:WF^x7$$\"3$HHHHi:\\^&FN$!( v;V%F^x7$$\"3qoooBg3ZbFN$!(QBg%F^x7$$\"3XWWWCkDzbFN$!(;k&[F^x7$$\"3IFx *youze&FN$!(62\"\\F^x7$$\"3555N^Hp'f&FN$!(pz%\\F^x7$$\"3!HH/[@6ag&FN$! (jA'\\F^x7$$\"3vvvDy%HTh&FN$!(u>p'*e&\\ z&FN$!(a6L$F^x7$$\"3bcccwbC6eFN$!(O?J$F^x7$$\"3&RRRkDNv#eFN$!(k%eKF^x7 $$\"3KJJJO\\#Q%eFN$!(f?<$F^x7$$\"3]ZZ(\\h*3weFN$!(lX%HF^x7$$\"3kjjj$Ha $3fFN$!(%f^FF^x7$$\"3++++!)oU;fFN$!((4DFF^x7$$\"3NOOOm%*\\CfFN$!(D3r#F ^x7$$\"3qsss_?dKfFN$!(t)4FF^x7$$\"35444RYkSfFN$!(PGs#F^x7$$\"3!====\") *ycfFN$!)[&**y#FN7$$\"3baaa%)\\$H(fFN$!)@l/HFN7$$\"3XXX&H4pe+'FN$!)?k) >$FN7$$\"3POOO,K!)QgFN$!)!R2L$FN7$$\"3XXX&H+ei0'FN$!)=m>KFN7$$\"3baaa/ GrtgFN$!)\"4U$HFN7$$\"3ljj81w;\"4'FN$!),lsCFN7$$\"3tsss2Ci3hFN$!)L:))= FN7$$\"3IIIb^niChFN$!)fNe8FN7$$\"3!zyy`4J19'FN$!)\"Gx-\"FN7$$\"3XXX?Ra jchFN$!)'QB,\"FN7$$\"3....$yRE<'FN$!)7`>5FN7$$\"3NNN&yYOU?'FN$!)5K\"4 \"FN7$$\"3onnn_J$eB'FN$!)5')e6FN7$$\"3?>>pOsFWiFN$!)(H\"f6FN7$$\"3qqqq ?8s_iFN$!)13[6FN7$$\"3?AAs/a;hiFN$!)4fC6FN7$$\"3vttt)[4'piFN$!)Z9)3\"F N7$$\"3!onnnl(\\'G'FN$!(&=v(*FN7$$\"3!)zzzCeQ.jFN$!(Z]C)FN7$$\"3vsssK' )3PjFN$!(k_l%FN7$$\"3mlllS9zqjFN$!($om>FN7$$\"3qm;a3SNyjFN$!(Vwn\"FN7$ $\"3qnnUwl\"fQ'FN$!()4P:FN7$$\"3qo=JW\"zMR'FN$!(hPb\"FN7$$\"3qpp>7HJkFN$!()QbRFN7$$ \"#l!\"#$!)M>p5FN-Fiu6&F[vF(F(Fhv-F$6$7b\\lF'7$Fey$!#!)F^x7$Fiz$!%b#*F ^x7$Fc[l$!&X(=F^x7$F]\\l$!&#[NF^x7$Fb\\l$!&.N'F^x7$Fg\\l$!':%3\"F^x7$F \\]l$!'))*=\"F^x7$Fa]l$!'2&=\"F^x7$Ff]l$!'%G=\"F^x7$F[^l$!'6/7F^x7$$\" 3___xLkv/\"\\F-$!(>s/\"F ^x7$Fagl$!(jPK\"F^x7$Fehl$!(dQJ\"F^x7$F_il$!(&e18F^x7$Fdil$!(-$48F^x7$ Fiil$!(MlK\"F^x7$Fcjl$!(vdP\"F^x7$F][m$!((*y[\"F^x7$Fb[m$!(5$p:F^x7$Fg [m$!(4\"y;F^x7$F\\\\m$!(tjn\"F^x7$Fa\\m$!((ot;F^x7$F[]m$!(b$o;F^x7$Fe] m$!(5Jm\"F^x7$Fj]m$!(pvl\"F^x7$F_^m$!(/Ml\"F^x7$Fc_m$!(oLl\"F^x7$F]`m$ !(FNm\"F^x7$Febm$!(2.x\"F^x7$F_cm$!(YI,#F^x7$Fcdm$!(q++#F^x7$F]em$!(3# ))>F^x7$Fgem$!(/Z)>F^x7$F[gm$!(uZ)>F^x7$F`gm$!(a@*>F^x7$Fegm$!(^J,#F^x 7$Fjgm$!((R'=#F^x7$F_hm$!(LcL#F^x7$Fcim$!(fGK#F^x7$F]jm$!(U6J#F^x7$Fgj m$!(!\\1BF^x7$Fa[n$!(*\\1BF^x7$Ff[n$!(gkJ#F^x7$F[\\n$!(*eXBF^x7$F`\\n$ !()e%\\#F^x7$Fe\\n$!(w8m#F^x7$Fi]n$!(#*fk#F^x7$Fc^n$!(R9j#F^x7$F]_n$!( tdi#F^x7$Fg_n$!(xCi#F^x7$F\\`n$!(1Si#F^x7$Fa`n$!(.Xj#F^x7$F_bn$!(a!=FF ^x7$Fibn$!(vq)HF^x7$F]dn$!('exHF^x7$Fgdn$!(_I'HF^x7$Faen$!(.&[HF^x7$F_ gn$!(@,%HF^x7$$\"3!*)))QEss:f\"FN$!(jJ%HF^x7$Fdgn$!(cq&HF^x7$$\"3EDD]E TJE;FN$!(+%*)HF^x7$Fign$!([90$F^x7$F^hn$!(s>9$F^x7$Fchn$!(r7G$F^x7$$\" 3edK^yu\"en\"FN$!(yHI$F^x7$$\"3__-SMwqx;FN$!(rdK$F^x7$$\"3ZZsG!z(fz;FN $!((QDLF^x7$$\"3UUU4mp\"FN$!(mpJ$F^x7$F]in$!(XKJ$F^x7$Fajn$!( JtH$F^x7$F[[o$!()3#G$F^x7$F`[o$!(S^F$F^x7$Fe[o$!(R)pKF^x7$Fj[o$!(lxE$F ^x7$F_\\o$!(O:F$F^x7$Fd\\o$!(!z%G$F^x7$Fi\\o$!(%=8LF^x7$F]^o$!(:ZO$F^x 7$Fg^o$!(h.X$F^x7$F\\_o$!(#[zNF^x7$Fa_o$!(Nyn$F^x7$Ff_o$!(4(pOF^x7$F[` o$!(O;m$F^x7$F_ao$!(mRk$F^x7$Fiao$!('[FOF^x7$Fcbo$!(&Q@OF^x7$F]co$!(mr h$F^x7$Fbco$!(bih$F^x7$Fgco$!(I3i$F^x7$F\\do$!(#QNOF^x7$Fado$!(m`m$F^x 7$F[eo$!()\\=PF^x7$Feeo$!(L_!QF^x7$Fjeo$!(XV#RF^x7$F_fo$!()zuSF^x7$Fdf o$!(*pmSF^x7$Fifo$!(]'eSF^x7$F]ho$!(N7/%F^x7$Fgho$!(uV-%F^x7$Faio$!(30 ,%F^x7$F_[p$!(wK+%F^x7$$\"3::::l&y'yBFN$!(Nb+%F^x7$Fd[p$!(v_,%F^x7$$\" 3a```8+$=T#FN$!(%ROSF^x7$Fi[p$!(SU2%F^x7$F^\\p$!(&zDUF^x7$Fc\\p$!((HPX F^x7$Fh\\p$!(/*=XF^x7$F]]p$!(_2]%F^x7$Fb]p$!(=P[%F^x7$Fg]p$!(n#oWF^x7$ Fa^p$!(.?Y%F^x7$F[_p$!(\")zX%F^x7$F`_p$!(XwX%F^x7$Fe_p$!($4jWF^x7$Fj_p $!(FrZ%F^x7$F_`p$!((p.XF^x7$Fi`p$!(Q![XF^x7$F]bp$!(kph%F^x7$Fbbp$!(1$Q [F^x7$Fgbp$!(016&F^x7$F\\cp$!(U34&F^x7$Facp$!(P82&F^x7$F[dp$!(e'Q]F^x7 $Fedp$!(4k-&F^x7$Fiep$!(^h-&F^x7$$\"3>==o!Q\\_.$FN$!(/V.&F^x7$F^fp$!(b 50&F^x7$$\"3kjj8h$4r1$FN$!(N(z]F^x7$Fcfp$!(5Y7&F^x7$Fggp$!('>6`F^x7$Fa hp$!(G,p&F^x7$Ffhp$!(\"))3eF^x7$F[ip$!(;G!fF^x7$F`ip$!(X\")*eF^x7$Feip $!(*[$*eF^x7$Fjip$!(1U)eF^x7$F_jp$!(o\\(eF^x7$Fc[q$!((=aeF^x7$Fg\\q$!( %)Q$eF^x7$F\\]q$!(Lm\"eF^x7$Fa]q$!(cF!eF^x7$F[^q$!(L\")z&F^x7$Fe^q$!(+ rz&F^x7$Fj^q$!('Q,eF^x7$F__q$!(8L\"eF^x7$Fd_q$!(G7'eF^x7$Fi_q$!($fjfF^ x7$Fgaq$!(/af'F^x7$F\\bq$!(\\Z)oF^x7$Fabq$!(z.?(F^x7$Ffbq$!(8\"*=(F^x7 $F[cq$!(**y<(F^x7$Fecq$!([c:(F^x7$F_dq$!(]O8(F^x7$Fidq$!(.>4(F^x7$Fceq $!(T]2(F^x7$F]fq$!(NP1(F^x7$$\"3www,$)zEAQFN$!(Q;1(F^x7$Fbfq$!(uP1(F^x 7$$\"3'ff4Z-*GcQFN$!(9;2(F^x7$Fgfq$!(up3(F^x7$Fagq$!(Ta9(F^x7$F[hq$!(! ofsF^x7$F`hq$!('*)puF^x7$Fehq$!(t!*o(F^x7$Fjhq$!(B#owF^x7$F_iq$!(Vvk(F ^x7$Fcjq$!(.Dg(F^x7$F][r$!(e2c(F^x7$Fa\\r$!(h5_(F^x7$F[]r$!(?\\Z(F^x7$ F_^r$!(LKW(F^x7$Fi^r$!(>OR(F^x7$F^_r$!(AxI(F^x7$Fc_r$!(bz?(F^x7$F]`r$! (yr=(F^x7$Fg`r$!(vl;(F^x7$F[br$!(%QHrF^x7$Febr$!(uv3(F^x7$Ficr$!(I$fqF ^x7$Fcdr$!(/$=qF^x7$F]er$!(%zepF^x7$Fafr$!(nA'oF^x7$F[gr$!(saS'F^x7$F` gr$!(D*4jF^x7$Fegr$!(KA?'F^x7$Fjgr$!(8)yhF^x7$F_hr$!(&)\\<'F^x7$Fdhr$! (Zt;'F^x7$Fihr$!(R(fhF^x7$Fcir$!(WN9'F^x7$Fgjr$!(et7'F^x7$Fa[s$!(\"p'4 'F^x7$Fe\\s$!(pM2'F^x7$F_]s$!(Zz.'F^x7$Fd]s$!(TN)fF^x7$Fi]s$!(U\"*)eF^ x7$Fc^s$!(:aX&F^x7$Fh^s$!(o@C&F^x7$F]_s$!(Ck'\\F^x7$$\"3](\\=Bd7oG&FN$ !(Lo#\\F^x7$$\"3qnU'[IO*)G&FN$!(Sf)[F^x7$$\"3!z.5u.g5H&FN$!(&>&)[F^x7$ $\"353e&*pP=$H&FN$!(]W)[F^x7$$\"3][t/N7V(H&FN$!(fH)[F^x7$Fb_s$!(r9)[F^ x7$$\"3qp>KIO<5`FN$!(*\\y[F^x7$Fg_s$!(Kb([F^x7$Fa`s$!(mO'[F^x7$F[as$!( P=&[F^x7$Feas$!(()*G[F^x7$F_bs$!(6K\"[F^x7$Fibs$!()H*y%F^x7$F^cs$!(V)[ ZF^x7$Fccs$!(6`n%F^x7$Fgds$!(Fr_%F^x7$Faes$!(p[D%F^x7$Ffes$!(pi&QF^x7$ F[fs$!(f$eKF^x7$Fefs$!(J2D$F^x7$F_gs$!(]JC$F^x7$Fchs$!(d%GKF^x7$Fhhs$! (p%>KF^x7$F]is$!(Ah?$F^x7$Fgis$!((4'>$F^x7$Fajs$!(iB=$F^x7$Ffjs$!)eIjJ FN7$F[[t$!)T\"o8$FN7$F`[t$!)!Hu/$FN7$Fe[t$!)]y!)GFN7$F_\\t$!)rhgDFN7$F i\\t$!)j_**>FN7$F^]t$!)f*ei\"FN7$Fc]t$!)\"3k:\"FN7$$\"3g2qNQ;jUhFN$!)% H+4\"FN7$$\"3IF_L\"=KY9'FN$!)S!=-\"FN7$$\"3+ZMJCFjYhFN$!)HY95FN7$$\"3q m;HnKj[hFN$!)?L95FN7$$\"351\"[KNME:'FN$!)9295FN7$Fh]t$!)E\"Q,\"FN7$$\" 3DCu66wjkhFN$!)bH85FN7$F]^t$!)#yF,\"FN7$Fb^t$!)5u55FN7$Fg^t$!)Jo35FN7$ Fe`t$!)Dj-5FN7$Fj`t$!( " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 4" }{TEXT 293 66 " .. The accuracy of another adaptive order 5-6 Runge-Ku tta method " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this example we construct a continuous numeric al solution to the differential equation" }}{PARA 257 "" 0 "" {TEXT -1 1 " " }{XPPEDIT 18 0 "dy/dx = (8*sin*7*x-3*y)/(6*x+1);" "6#/*&%#dyG \"\"\"%#dxG!\"\"*&,&**\"\")F&%$sinGF&\"\"(F&%\"xGF&F&*&\"\"$F&%\"yGF&F (F&,&*&\"\"'F&F/F&F&F&F&F(" }{TEXT -1 2 ", " }}{PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial condition " }{XPPEDIT 18 0 "y(0) = 1;" " 6#/-%\"yG6#\"\"!\"\"\"" }{TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "Maple can find an analytical soluti on although it has an awkward form which requires that an equation be \+ solved for each evaluation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 153 "de := diff(y(x),x)=(8*sin(7*x)-3*y (x))/(6*x+1);\nic := y(0)=1;\ndsolve(\{de,ic\},y(x));\ng := unapply(rh s(%),x):\nplot(g(x),x=0..2,0..1.4,labels=[`x`,`y(x)`]);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&*&\"\")\"\" \"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F1!\"\"F1,&*&\"\"'F1F,F1F1F 1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" } }{PARA 12 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#%\"xG,$*&#\"\"\"\"#@F+*&,,*, \"\")F+-%)FresnelSG6#,$*(\"\"$!\"\"F,#F+\"\"#*&%#PiGF7,&*&\"\"'F+F'F+F +F+F+F+F8F+F+-%$cosG6##\"\"(F>F+F,F8F;F8F+*,F0F+-%$sinGFAF+-%)FresnelC GF3F+F,F8F;F8F7*,F0F+-F26#,$*(F6F7F;#F7F9F,F8F+F+F?F+F,F8F;F8F7*,F0F+- FHFKF+FEF+F,F8F;F8F+F,F+F+FL\"Fjn7$$\"+'zs$HLF2$\"+:-iZ8Fjn7$$\"+] h5NMF2$\"+bl*HN\"Fjn7$$\"+/&R3a$F2$\"+dxrc8Fjn7$$\"+\"=1Pf$F2$\"+\"z`z N\"Fjn7$$\"+eGdYOF2$\"+FDxe8Fjn7$$\"+O&R%*p$F2$\"+sR+&F2$\"+x4*oC\"Fjn7$$\"++ FZ=_F2$\"+MGJ47Fjn7$$\"+]Z/NaF2$\"+!>f!o6Fjn7$$\"+]?vVcF2$\"+]MbD6Fjn7 $$\"+]$fC&eF2$\"+rx2\"3\"Fjn7$$\"+vb)>/'F2$\"+'y&fR5Fjn7$$\"+'z6:B'F2$ \"+;*\\j(**F27$$\"+0o(oX'F2$\"+$RE&y%*F27$$\"+<=C#o'F2$\"+k%p+**)F27$$ \"+Sb:toF2$\"+Qhi*e)F27$$\"+n#pS1(F2$\"+\">Xi?)F27$$\"+j`A3vF2$\"+\"e/ DS(F27$$\"+n(y8!zF2$\"+AU()>oF27$$\"+j.tK$)F2$\"+IY>VjF27$$\"+DZ5Q&)F2 $\"+M3YzhF27$$\"+)3zMu)F2$\"+5iwcgF27$$\"+!plx&*)F2$\"+&=v;(fF27$$\"+# H_?<*F2$\"+p;yGfF27$$\"+!HV/F*F2$\"+y_eAfF27$$\"+&GM)o$*F2$\"+P5]CfF27 $$\"+!GDsY*F2$\"+of@MfF27$$\"+!G;cc*F2$\"+@**Q^fF27$$\"+XA(yx*F2$\"+bV 37gF27$$\"+4#G,***F2$\"+8st,hF27$$\"+!o2J/\"Fjn$\"+ST%4O'F27$$\"+%Q#\\ \"3\"Fjn$\"+14')QmF27$$\"+;*[H7\"Fjn$\"+NPudpF27$$\"+qvxl6Fjn$\"+N$G-F (F27$$\"+`qn27Fjn$\"+))zfDvF27$$\"+/q%zA\"Fjn$\"+#HgHi(F27$$\"+cp@[7Fj n$\"+i2))*p(F27$$\"+#GB2F\"Fjn$\"+4\\1fxF27$$\"+3'HKH\"Fjn$\"+j0)))y(F 27$$\"+UDX88Fjn$\"+30s*y(F27$$\"+xanL8Fjn$\"++OtlxF27$$\"+wxEb8Fjn$\"+ !)>-8xF27$$\"+v+'oP\"Fjn$\"+]sBLwF27$$\"+S<*fT\"Fjn$\"+$*)4\\U(F27$$\" +&)Hxe9Fjn$\"+!*RLe_g&F27$$\"+$* zym;Fjn$\"+-B7!G&F27$$\"+^j?4Fjn$\"+en'>!\\F27$$\"+/Uac>Fjn$\"+\"fZt1& F27$$\"\"#F)$\"+F-(GF&F2-%'COLOURG6&%$RGBG$\"#5!\"\"F(F(-%+AXESLABELSG 6$%\"xG%%y(x)G-%%VIEWG6$;F(Fdel;F($\"#9F^fl" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 106 "We start by constructing a dis crete solution and make a numerical comparison with the analytical sol ution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 375 "de := diff(y(x),x )=(8*sin(7*x)-3*y(x))/(6*x+1);\nic := y(0)=1;\npts := desolveRK(\{de,i c\},y(x),x=0..2,method=rk56b,output=points):\ncat(`The discrete soluti on has `,convert(nops(pts),string),` points`);\np1 := plot(pts,style=l ine,color=grey):\np2 := plot([pts$2],style=point,symbol=[diamond,cross ],color=[black,red]):\nplots[display]([p1,p2],view=[0..2,0..1.4],label s=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$- %\"yG6#%\"xGF,*&,&*&\"\")\"\"\"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1 F)F1!\"\"F1,&*&\"\"'F1F,F1F1F1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# >%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%DThe~di screte~solution~has~64~pointsG" }}{PARA 13 "" 1 "" {GLPLOT2D 677 275 275 {PLOTDATA 2 "6'-%'CURVESG6%7\\o7$$\"\"!F)$\"\"\"F)7$$\"3-+++++++5! #>$\"3=+++:v^R(*!#=7$$\"3-+++**F27$$\"31++ +pOtJ8F2$\"3$*******Ha/E5!#<7$$\"3#******zA#GT:F2$\"3!******>4sm1\"Fen 7$$\"3))*****>$oIn5U&oDF 2$\"3'******fe;ME\"Fen7$$\"3%)*****>BU_*GF2$\"3*)*****Hs-)38Fen7$$\"3A +++tzI*G$F2$\"3!******4da^M\"Fen7$$\"33+++hovcOF2$\"3-+++*H#))e8Fen7$$ \"3'******R45L.%F2$\"3%******\\&4:_8Fen7$$\"3?+++q.0#R%F2$\"36+++p.(oK \"Fen7$$\"31+++&*z>XZF2$\"3%******z?lcG\"Fen7$$\"3U+++hs3*4&F2$\"3/+++ F1`I7Fen7$$\"35+++aK&)eaF2$\"3#******p)GLj6Fen7$$\"3$******\\e\\5$eF2$ \"3++++\\'4d3\"Fen7$$\"3m*****R3!GGiF2$\"3)******4E:N)**F27$$\"3S+++3% Qzp'F2$\"31+++U)3m&*)F27$$\"3w*****p)QQkqF2$\"3.+++%zHc?)F27$$\"3[+++R 8\\SuF2$\"3/+++$[*)e^(F27$$\"3c******o]<)y(F2$\"3-+++Z`#Q(pF27$$\"3_++ +,6!)=\")F2$\"3[*****pV-ub'F27$$\"3\\+++#)y?R%)F2$\"3%******zAkJD'F27$ $\"3i*****z8zPv)F2$\"3'******p)Ho^gF27$$\"3U+++#oxf1*F2$\"3>+++))[([%f F27$$\"3w*****pH-!z$*F2$\"3w*****RC\\^#fF27$$\"3#)******H&>ip*F2$\"3[* ****\\$)y])fF27$$\"3/+++%4n@+\"Fen$\"31+++OaE\"Fen$\"3T+++1a#yU(F27$$\"34+++`fbE7Fen$\"3F+++9w!ph(F27$$\"33++ +#Qb8E\"Fen$\"3l******R(4zt(F27$$\"3!******f%)\\aH\"Fen$\"3a+++()H=!z( F27$$\"3\"******HGM#H8Fen$\"3))*****\\;BJx(F27$$\"3/+++^S*HO\"Fen$\"3) )********o^(o(F27$$\"3!******pR&)pR\"Fen$\"3B+++G.#e`(F27$$\"3%******H ())[J9Fen$\"3]*****\\.p?K(F27$$\"3-+++Xc(oY\"Fen$\"3a*****pHz90(F27$$ \"3\"******>!fu.:Fen$\"3`*****pq@%HnF27$$\"3)******>DxLa\"Fen$\"3Y+++A 0(zN'F27$$\"33+++a3\"4f\"Fen$\"3j*****R*)G,\"fF27$$\"3$******>')\\yi\" Fen$\"3!******H:CQe&F27$$\"3'******4m,cm\"Fen$\"3++++\\(3')G&F27$$\"3/ +++M\"o2q\"Fen$\"3c+++E%Q31&F27$$\"3*******R5UWt\"Fen$\"3#)*****>yhM*[ F27$$\"3'*******RqFnSK>Fen$ \"3w******pVJk\\F27$$\"3-+++%f[(o>Fen$\"3b+++pG:B^F27$$\"\"#F)$\"3[+++ S-(GF&F2-%'COLOURG6&%$RGBG$\")=THv!\")Fh_lFh_l-%&STYLEG6#%%LINEG-F$6&F &-Fe_l6&Fg_lF)F)F)-%'SYMBOLG6#%(DIAMONDG-F\\`l6#%&POINTG-F$6&F&-Fe_l6& Fg_l$\"*++++\"Fj_lF(F(-Fd`l6#%&CROSSGFg`l-%+AXESLABELSG6%%\"xG%%y(x)G- %%FONTG6#%(DEFAULTG-%%VIEWG6$;F(F`_l;F($\"#9!\"\"" 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" }}} }{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A contin uous solution can be constructed over the interval from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 " to " }{XPPEDIT 18 0 "x = 2;" "6#/%\"xG\"\"#" }{TEXT -1 21 " using the procedure " }{TEXT 0 9 "desol veRK" }{TEXT -1 20 " with the options ''" }{TEXT 262 12 "method=rk56b " }{TEXT -1 9 "'' and ''" }{TEXT 262 15 "output=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 251 "de := diff(y(x),x)=(8*sin(7*x)-3*y(x))/(6*x+1);\nic \+ := y(0)=1;\ngn1 := desolveRK(\{de,ic\},y(x),x=0..4,method=rk56b,output =rkinterp);\nplot('gn1'(x),x=0..2,0..1.4,labels=[`x`,`y(x)`],\n \+ color=COLOR(RGB,0,.7,0),thickness=2,labels=[`x`,`y(x)`]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&*& \"\")\"\"\"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F1!\"\"F1,&*&\"\"' F1F,F1F1F1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"! \"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 470 275 275 {PLOTDATA 2 "6'-%'CUR VESG6#7`p7$$\"\"!F)$\"\"\"F)7$$\"+L\"Fjn7$$\"+'zs$HLF2$\"+:-iZ8Fjn7$$\"+]h5NMF2$\"+bl*HN\"Fjn7$$\"+/&R 3a$F2$\"+dxrc8Fjn7$$\"+\"=1Pf$F2$\"+\"z`zN\"Fjn7$$\"+eGdYOF2$\"+EDxe8F jn7$$\"+O&R%*p$F2$\"+tR+&F2$\"+x4*oC\"Fjn7$$\"++FZ=_F2$\"+MGJ47Fjn7$$\"+]Z/Na F2$\"+*=f!o6Fjn7$$\"+]?vVcF2$\"+]MbD6Fjn7$$\"+]$fC&eF2$\"+rx2\"3\"Fjn7 $$\"+vb)>/'F2$\"+'y&fR5Fjn7$$\"+'z6:B'F2$\"+<*\\j(**F27$$\"+0o(oX'F2$ \"+'QE&y%*F27$$\"+<=C#o'F2$\"+o%p+**)F27$$\"+Sb:toF2$\"+Ohi*e)F27$$\"+ n#pS1(F2$\"+!=Xi?)F27$$\"+j`A3vF2$\"+!e/DS(F27$$\"+n(y8!zF2$\"+@U()>oF 27$$\"+j.tK$)F2$\"+FY>VjF27$$\"+DZ5Q&)F2$\"+P3YzhF27$$\"+)3zMu)F2$\"+5 iwcgF27$$\"+!plx&*)F2$\"+'=v;(fF27$$\"+#H_?<*F2$\"+p;yGfF27$$\"+!HV/F* F2$\"+y_eAfF27$$\"+&GM)o$*F2$\"+S5]CfF27$$\"+!GDsY*F2$\"+pf@MfF27$$\"+ !G;cc*F2$\"+B**Q^fF27$$\"+XA(yx*F2$\"+cV37gF27$$\"+4#G,***F2$\"+8st,hF 27$$\"+!o2J/\"Fjn$\"+RT%4O'F27$$\"+%Q#\\\"3\"Fjn$\"+14')QmF27$$\"+;*[H 7\"Fjn$\"+KPudpF27$$\"+qvxl6Fjn$\"+K$G-F(F27$$\"+`qn27Fjn$\"+\"*zfDvF2 7$$\"+/q%zA\"Fjn$\"+&HgHi(F27$$\"+cp@[7Fjn$\"+e2))*p(F27$$\"+#GB2F\"Fj n$\"+3\\1fxF27$$\"+3'HKH\"Fjn$\"+k0)))y(F27$$\"+UDX88Fjn$\"+50s*y(F27$ $\"+xanL8Fjn$\"++OtlxF27$$\"+wxEb8Fjn$\"+\")>-8xF27$$\"+v+'oP\"Fjn$\"+ asBLwF27$$\"+S<*fT\"Fjn$\"+#*)4\\U(F27$$\"+&)Hxe9Fjn$\"+&)RLe_g&F27$$\"+$*zym;Fjn$\"+9B7!G&F27$$\"+ ^j?4Fjn$\"+Zn'>!\\F27$$\"+/Uac>Fjn$\"+.wMn]F27$$\"\"#F)$\"+S-(GF&F2-%& COLORG6&%$RGBGF($\"\"(!\"\"F(-%*THICKNESSG6#Feel-%+AXESLABELSG6$%\"xG% %y(x)G-%%VIEWG6$;F(Fdel;F($\"#9F^fl" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 139 "The first error graph is plotted using s tandard 10 digit arithmetic for the evaluation of the procedure which \+ gives the numerical solution." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "plot('gn1'(x)-g(x),x=0..2,co lor=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-% 'CURVESG6#7ajo7$$\"\"!F)F(7$$\"+S&)G\\a!#7F(7$$\"+3x&)*3\"!#6F(7$$\"+N @Ki8F1F(7$$\"+ilyM;F1F(7$$\"+w(=5x\"F1F(7$$\"+!*4D2>F1F(7$$\"+/K[V?F1F (7$$\"+]9QF1FD7$$\"+%>M2&RF1F(7$$\"+2k'p3%F1F(7$$\"+?')>BUF1FS7$$\"+M3VfVF1 FD7$$\"+bd'zZ%F1FS7$$\"+w1]'f%F1F(7$$\"+'fN]r%F1FD7$$\"+<0dL[F1FS7$$\" +Qa5_\\F1F(7$$\"+g.kq]F1FD7$$\"+!Gv\"*=&F1FD7$$\"++-r2`F1F(7$$\"+?^CEa F1F(7$$\"+S+yWbF1F(7$$\"+g\\JjcF1F(7$$\"+!))\\=y&F1FS7$$\"++[Q+fF1F(7$ $\"+?(>*=gF1$!\"#FF7$$\"+SYXPhF1FD7$$\"+l&*)fD'F1F(7$$\"+!\\CXP'F1FD7$ $\"+5%fI\\'F1FS7$$\"+IVf6mF1F(7$$\"+]#H,t'F1FD7$$\"+qTm[oF1F(7$$\"+!4* >npF1FS7$$\"+5St&3(F1F(7$$\"+I*oU?(F1F(7$$\"+]Q!GK(F1F(7$$\"+q(Q8W(F1F D7$$\"+!pt)fvF1F(7$$\"+5'3%ywF1FD7$$\"+]%ya\"zF1FD7$$\"+#H[D:)F1FD7$$ \"+5K&eG)F1F(7$$\"+D\"e\">%)F1FS7$$\"+SIY_&)F1F(7$$\"+bzw&o)F1F(7$$\"+ qG2>))F1FS7$$\"+&yxB&*)F1FD7$$\"++Fo&3*F1FD7$$\"+:w)*=#*F1F(7$$\"+IDH_ $*F1FS7$$\"+]uf&[*F1F(7$$\"+lB!*='*F1FS7$$\"+!G2Av*F1FS7$$\"+&>7b))*F1 FS7$$\"+6<)=+\"!#5FS7$$\"+-A@:5FixFD7$$\"+%pU&G5FixF(7$$\"+gY'=3\"FixF (7$$\"+Em=N6FixF(7$$\"+4w%=;\"FixF(7$$\"+#f3&)=\"FixF(7$$\"+%3R=?\"Fix F(7$$\"+v&p^@\"FixF(7$$\"+m+]G7FixFS7$$\"+e0$=C\"FixFD7$$\"+8%\\_D\"Fi xFD7$$\"+o#o'o7FixF(7$$\"+Ar3#G\"FixF]s7$$\"+xf]&H\"FixF(7$$\"+K[#*38F ixF(7$$\"+'oVBK\"FixF(7$$\"+TDwN8FixFD7$$\"+'R\"=\\8FixFS7$$\"+]-gi8Fi xF(7$$\"+0\">gP\"FixF]s7$$\"+gzV*Q\"FixFS7$$\"+9o&GS\"FixF]s7$$\"+pcF; 9FixF(7$$\"+CXpH9FixF(7$$\"+yL6V9FixFD7$$\"+LA`c9FixFD7$$\"+)3^*p9FixF (7$$\"+U*pL[\"FixFS7$$\"+(z)y'\\\"FixF(7$$\"+_w?5:FixF(7$$\"+1liB:Fix$ \"\"#FF7$$\"+h`/P:FixF(7$$\"+;UY]:FixF(7$$\"+qI)Qc\"FixFD7$$\"+D>Ix:Fi xF(7$$\"+!y?2f\"FixF(7$$\"+M'RTg\"FixFS7$$\"+*[evh\"FixFD7$$\"+Wt(4j\" FixFS7$$\"+)>'RW;FixFD7$$\"+`]\"yl\"Fix$\"\"$FF7$$\"+3RBr;FixFS7$$\"+& )*)e%o\"FixF(7$$\"+iS%zp\"FixFS7$$\"+S\"*H6Zw\"FixFS7$$\"+EX2yFixF(7$$\"+w.)\\#>FixFS7$$\"+`aLQ>FixFD7$$\"+I 0p^>FixF(7$$\"+3c/l>FixF(7$$\"+&o+%y>FixF(7$$\"+idv\"*>FixFD7$$\"+R360 ?FixFg^l7$$\"+;fY=?FixFS7$$\"+$*4#=.#FixFD7$$\"+qguN@FixF(7$$\"+WQ7[@FixFD7$$\"+5d]g@FixFS7$ $\"+wv)G<#FixFD7$$\"+U%p_=#FixF(7$$\"+38l(>#FixFg^l7$$\"+uJ.5AFixFS7$$ \"+S]TAAFixFS7$$\"+1pzMAFixFS7$$\"+t(yrC#FixFD7$$\"+S1cfAFixFS7$$\"+1D %>F#FixF]s7$$\"+sVK%G#FixFS7$$\"+Qiq'H#FixF(7$$\"+n6w&R#FixF(7$$\"+'4; [\\#FixF(7$$\"+,oj2DFixFS7$$\"+1vX?DFixFD7$$\"+7#yK`#FixF(7$$\"+<*)4YD FixFD7$$\"+A'>*eDFixF(7$$\"+G.urDFixFD7$$\"+L5c%e#FixFD7$$\"+Q_6,$FixF(7$$\"+)Q6W-$FixF(7$$ \"+!eqw.$FixFD7$$\"+s(H40$FixFD7$$\"+j*)=kIFixFD7$$\"+a\"[u2$FixFD7$$ \"+Ytq!4$FixF(7$$\"+Ql'R5$FixFD7$$\"+IdA$FixFD7$$\"+s+/5KFixF(7$$\"+j#*HBKFixF]s7$$\"+a%elB$FixF(7$$\"+Yw\" )\\KFixFD7$$\"+Qo2jKFixF(7$$\"+IgLwKFixFS7$$\"+A_f*G$FixF(7$$\"+8W&GI$ FixFD7$$\"+/O6;LFixF(7$$\"+'zs$HLFixF(7$$\"+t%RAQ$FixF(7$$\"+]h5NMFixF (7$$\"+)[R:Y$FixF(7$$\"+FG(z[$FixF(7$$\"+'\\*=,NFixF(7$$\"+mhS9NFixF(7 $$\"+NGiFNFixF(7$$\"+/&R3a$FixFD7$$\"+eGdYOFixFD7$$\"+8iI_PFixFD7$$\"+ #=,fw$FixF(7$$\"+]h\\zPFixF(7$$\"+>64$z$FixF(7$$\"+)3'o1QFixF(7$$\"+d5 G?QFixFS7$$\"+Eg(Q$QFixFS7$$\"+&*4ZZQFixF(7$$\"+kf1hQFixF(7$$\"+SeW:RF ixF(7$$\"+:d#)pRFixF(7$$\"+maeySFixF(7$$\"+<_M(=%FixF(7$$\"+8l$*yVFixF (7$$\"+4y_qXFixF(7$$\"+5#3Se%FixFS7$$\"+7')[(f%FixF(7$$\"+8!p4h%FixFS7 $$\"+9%\\Wi%FixFS7$$\"+;)Hzj%FixFD7$$\"+<-T^YFixF(7$$\"+=1*[m%FixFS7$$ \"+?5PyYFixFD7$$\"+@9&=p%FixFD7$$\"+A=L0ZFixFD7$$\"+CA\")=ZFixF(7$$\"+ DEHKZFixF(7$$\"+EIxXZFixFS7$$\"+GMDfZFixF(7$$\"+HQtsZFixF(7$$\"+IU@'y% FixFD7$$\"+JYp*z%FixF(7$$\"+K]<8[FixF(7$$\"+MalE[FixFD7$$\"+Ne8S[FixF( 7$$\"+Qm4n[FixF(7$$\"+Su0%*[FixF(7$$\"+X!zz%\\FixF(7$$\"+]1!>+&FixF(7$ $\"++kV:]FixFD7$$\"+b@(*G]FixFS7$$\"+5z]U]FixF(7$$\"+gO/c]FixF(7$$\"+: %z&p]FixF(7$$\"+q^6$3&FixF(7$$\"+?4l'4&FixFD7$$\"+vm=5^FixFD7$$\"+ICsB ^FixFD7$$\"+!=es8&FixF(7$$\"+NRz]^FixFS7$$\"+!pHV;&FixF(7$$\"+&>,9>&Fi xF(7$$\"++FZ=_FixF(7$$\"+0UaX_FixF(7$$\"+5dhs_FixF(7$$\"+l9:'G&FixFD7$ $\"+?so*H&FixF(7$$\"+qHA8`FixF(7$$\"+D(enK&FixFD7$$\"+![%HS`FixFS7$$\" +I-$QN&FixFD7$$\"+&)fOn`FixF(7$$\"+SYg&FixF(7$$\"+SOmS,.'Fi x$\"\"&Fix7$$\"+vb)>/'Fix$!\"&Fix7$$\"+g4$Q0'Fix$!\"$Fix7$$\"+]jnlgFix Fejn7$$\"+S<_xgFixFg[o7$$\"+IrO*3'FixF\\\\o7$$\"+?D@,hFix$\"\"(Fix7$$ \"+5z08hFix$!#8Fix7$$\"++L!\\7'FixFb[o7$$\"+&o[n8'Fix$\"\")Fix7$$\"+qS f[hFixFgin7$$\"+g%R/;'Fix$\"\"%Fix7$$\"+][GshFixF^[o7$$\"+S-8%='FixF(7 $$\"+Ic(f>'Fix$FTFix7$$\"+?5#y?'Fix$\"#6Fix7$$\"+5km>iFixFj\\o7$$\"+'z 6:B'FixFj^o7$$\"+5rfXiFix$\"\"'Fix7$$\"+DCofiFixFjjn7$$\"+SxwtiFixFg[o 7$$\"+]I&yG'FixF\\jn7$$\"+g$Q>I'FixF\\jn7$$\"+vO-;jFixF(7$$\"+!**3,L'F ixFj^o7$$\"++V>WjFix$Fh`lFix7$$\"+5'z#ejFixFi_o7$$\"+D\\OsjFixFejn7$$ \"+S-X'Q'FixFg]o7$$\"+]b`+kFixF`jn7$$\"+l3i9kFixFj\\o7$$\"+!=1(GkFixFb [o7$$\"+!\\\"zUkFixFjjn7$$\"+0o(oX'FixF`jn7$$\"+?@'4Z'Fix$\"#7Fix7$$\" +Iu/&['Fix$FEFix7$$\"+XF8*\\'FixFg[o7$$\"+g!=K^'FixFj^o7$$\"+qLIFlFixF gin7$$\"+&o)QTlFixFj^o7$$\"++SZblFixFj^o7$$\"+5$f&plFixF\\\\o7$$\"+DYk $e'FixFaco7$$\"+S*Hxf'FixF`ao7$$\"+]_\"=h'FixF\\\\o7$$\"+l0!fi'FixFjjn 7$$\"+!)e)*RmFix$\"#5Fix7$$\"+!>rSl'FixF\\\\o7$$\"+0l:omFixFg[o7$$\"+< =C#o'FixF_^o7$$\"+DR<%p'FixFi_o7$$\"+Ng51nFixFjjn7$$\"+S\"Q!=nFixFjjn7 $$\"+]-(*HnFixFi_o7$$\"+gB!>u'FixF_^o7$$\"+lW$Qv'FixFg[o7$$\"+qlwlnFix Fg[o7$$\"+!o)pxnFix$!\"'Fix7$$\"+!zI'*y'FixFjjn7$$\"+&*Gc,oFixFb[o7$$ \"++]\\8oFixFfgo7$$\"+5rUDoFix$FFFix7$$\"+?#ft$oFixFejn7$$\"+D8H\\oFix $!\")Fix7$$\"+IMAhoFixFejn7$$\"+Sb:toFixF\\jn7$$\"+]w3&)oFixFejn7$$\"+ b(>q*oFixFi_o7$$\"+g=&*3pFix$F1Fix7$$\"+qR)3#pFixFg]o7$$\"+!3;G$pFixF` jn7$$\"+!>[Z%pFixFj\\o7$$\"++.ocpFixFaco7$$\"+0ChopFixF[io7$$\"+5Xa!)p FixFdho7$$\"+?mZ#*pFixF[io7$$\"+I(3W+(FixFg[o7$$\"+N3M;qFixF`ao7$$\"+S HFGqFixF`ao7$$\"+]]?SqFixF[io7$$\"+gr8_qFixF\\\\o7$$\"+n#pS1(FixF\\jo7 $$\"+X\"\\z2(FixFfgo7$$\"+D!H=4(FixFj^o7$$\"++*3d5(FixFdho7$$\"+!y)e>r FixF_^o7$$\"+g'oM8(FixFb[o7$$\"+N&[t9(FixF`ao7$$\"+5%G7;(FixFg[o7$$\"+ !H3^<(FixF`ao7$$\"+q\"))*)=(FixFaco7$$\"+X!oG?(FixFaco7$$\"+?zu;sFixFg ]o7$$\"++yiIsFixFg[o7$$\"+!o2XC(FixF[io7$$\"+gvQesFixFg[o7$$\"+SuEssFi xF\\co7$$\"+:t9'G(FixFfgo7$$\"+!>F+I(FixF`ao7$$\"+qq!RJ(FixFj^o7$$\"+] pyFtFixF[io7$$\"+IomTtFixFceo7$$\"+5nabtFixF`ao7$$\"+&eE%ptFixF\\jn7$$ \"+gkI$Q(FixF(7$$\"+Sj=(R(FixF_^o7$$\"+?i16uFixFj^o7$$\"+&4Y\\U(FixF(7 $$\"+qf#)QuFixFfgo7$$\"+]eq_uFixF\\\\o7$$\"+IdemuFixFb[o7$$\"+0cY![(Fi xFdho7$$\"+&[XV\\(FixF[io7$$\"+j`A3vFixFaco7$$\"+09^?vFixFg]o7$$\"+]uz KvFixF(7$$\"+&\\$3XvFixFfgo7$$\"+S&ptb(FixFejn7$$\"+&eb'pvFixFg[o7$$\" +I;%>e(FixFb[o7$$\"+qwA%f(FixF`ao7$$\"+:P^1wFixFb[o7$$\"+g(*z=wFixFg]o 7$$\"++e3JwFixFj^o7$$\"+X=PVwFixF(7$$\"+!*ylbwFixFj^o7$$\"+NR%zm(FixF` jn7$$\"+!)*H-o(FixFi_o7$$\"+?g^#p(FixF`jn7$$\"+l?![q(FixFj^o7$$\"+5\") 3g;u(FixFi_o7$$\"+Si%Rv(FixF\\jo7$$ \"+&GKiw(FixF`ao7$$\"+I$=&yxFixFg[o7$$\"+qV!3z(FixF[io7$$\"+:/4.yFixFg in7$$\"+gkP:yFixF\\jn7$$\"++DmFyFixF`ao7$$\"+X&[*RyFixFaco7$$\"+!fMA&y FixF`ao7$$\"+N1_kyFixF`ao7$$\"+!o1o(yFixFfgo7$$\"+DF4*)yFixF(7$$\"+n(y 8!zFixFaco7$$\"+0&e[\"zFixFgin7$$\"+S#Q$GzFixF\\\\o7$$\"+!)z\"=%zFixFb [o7$$\"+:xHbzFixF`ao7$$\"+]uxozFixFg]o7$$\"+!>dA)zFixFg[o7$$\"+Ipt&*zF ixF\\jn7$$\"+lm@4!)FixFb[o7$$\"++kpA!)FixFfgo7$$\"+Sh)FixFfgo7$$\"+IFT6#)FixF\\jn7$$\"+lC*[A)FixF`ao7$$\"++APQ #)FixFj^o7$$\"+S>&=D)FixF\\jn7$$\"+!oJ`E)FixFgin7$$\"+:9\")y#)FixF`ao7 $$\"+]6H#H)FixF(7$$\"+!*3x0$)FixFgin7$$\"+D1D>$)FixFj^o7$$\"+j.tK$)Fix F\\\\o7$$\"+gicX$)FixFaco7$$\"+g@Se$)FixFb[o7$$\"+g!Q7P)FixFjjn7$$\"+b R2%Q)FixF\\\\o7$$\"+])4pR)FixFg[o7$$\"+]du4%)FixFj\\o7$$\"+];eA%)FixF \\jn7$$\"+XvTN%)FixFjjn7$$\"+SMD[%)FixFjjn7$$\"+S$*3h%)FixF(7$$\"+S_#R Z)FixFaco7$$\"+N6w'[)FixF\\\\o7$$\"+Iqf*\\)FixFjjn7$$\"+IHV7&)FixFaco7 $$\"+I)o__)FixF\\jn7$$\"+DZ5Q&)FixF`ao7$$\"+?1%4b)FixFi_o7$$\"+?lxj&)F ixFfgo7$$\"+?Chw&)FixF\\\\o7$$\"+:$[%*e)FixF(7$$\"+5UG-')FixF_^o7$$\"+ 5,7:')FixF`ao7$$\"+5g&zi)FixF(7$$\"+0>zS')FixFaco7$$\"++yi`')FixFj^o7$ $\"++PYm')FixFaco7$$\"++'*Hz')FixF\\jn7$$\"+&\\N@p)FixF(7$$\"+!Rr\\q)F ixF(7$$\"+!H2yr)FixFg[o7$$\"+!>V1t)FixF`ao7$$\"+)3zMu)FixF(7$$\"++?(ov )FixFj^o7$$\"+:\\Eq()FixF\\\\o7$$\"+Iyl$y)FixF\\jn7$$\"+S20(z)FixF\\\\ o7$$\"+ll$Q#))FixFaco7$$\"+!RA1&))FixFj^o7$$\"++`,k))FixFaco7$$\"+:#3u ())FixFaco7$$\"+I6!3*))FixFj^o7$$\"+SS>/*)FixF(7$$\"+]pe<*)FixFaco7$$ \"+l)z4$*)FixF(7$$\"+!ysV%*)FixFaco7$$\"+!plx&*)FixFj^o7$$\"++'e6(*)Fi xF\\jn7$$\"+::b%)*)FixF`ao7$$\"+IW%z**)FixFjjn7$$\"+StL6!*FixF(7$$\"+] -tC!*FixFj^o7$$\"+lJ7Q!*FixFjjn7$$\"+!3;:0*FixFj^o7$$\"+!**3\\1*FixF\\ \\o7$$\"+S1[=\"*FixFaco7$$\"+#H_?<*FixF(7$$\"+!zZ7A*FixF(7$$\"+!HV/F*F ixF(7$$\"+l@u#G*FixF(7$$\"+S5/&H*FixF\\\\o7$$\"+:*RtI*FixF_^o7$$\"+!zQ '>$*FixF\\jn7$$\"+lw$>L*FixF\\jn7$$\"+SlBW$*FixF\\\\o7$$\"+5a`c$*FixF( 7$$\"+&GM)o$*FixF`ao7$$\"+gJ8\"Q*FixF(7$$\"+I?V$R*FixFj^o7$$\"+04t0%*F ixFjjn7$$\"+!yH!=%*FixF\\jn7$$\"+IviU%*FixF(7$$\"+!GDsY*FixFj^o7$$\"+b T_z%*FixFj^o7$$\"+II#=\\*FixF\\jn7$$\"+0>7/&*FixF(7$$\"+!y?k^*FixF\\jn 7$$\"+b'>(G&*FixF(7$$\"+I&=5a*FixFaco7$$\"+0uJ`&*FixFjjn7$$\"+!G;cc*Fi xFjjn7$$\"+XA(yx*FixFj^o7$$\"+4#G,***FixF(7$$\"+'y!R+5FFF\\jn7$$\"+](o <+\"FFFj^o7$$\"+9n9.5FFFgin7$$\"+yY_/5FFF(7$$\"+21G25FFFj^o7$$\"+Ol.55 FFFjjn7$$\"++XT65FFFaco7$$\"+kCz75FFFgin7$$\"+G/<95FFFg[o7$$\"+$R[b,\" FFFi_o7$$\"+ej#p,\"FFFaco7$$\"+AVI=5FFFfgo7$$\"+'G#o>5FFFaco7$$\"+]-1@ 5FFFj^o7$$\"+3@dE5FFF(7$$\"+lR3K5FFF\\jn7$$\"+I>YL5FFFg[o7$$\"+%*)R[. \"FFFj^o7$$\"+ey@O5FFF\\\\o7$$\"+AefP5FFF\\jn7$$\"+'yt*Q5FFFg[o7$$\"+^ ]d5FFF_^o7$$\"+m9qe5FFF`ao7$$ \"+))4!*f5FFF`ao7$$\"+505h5FFFdho7$$\"+K+Ii5FFF(7$$\"+w!*pk5FFFjjn7$$ \"+?\")4n5FFF_^o7$$\"+UwHo5FFF`ao7$$\"+kr\\p5FFFj^o7$$\"+'o'pq5FFF`ao7 $$\"+3i*=2\"FFF\\jn7$$\"+Id4t5FFF_^o7$$\"+__Hu5FFFj^o7$$\"+uZ\\v5FFFb[ o7$$\"+'H%pw5FFF(7$$\"+=Q*y2\"FFF\\\\o7$$\"+SL4z5FFF`ao7$$\"+iGH!3\"FF F(7$$\"+%Q#\\\"3\"FFF(7$$\"+6FFFaco7$$\"+$)yN?6FFFjjn7$$\"++Ml@6FF F\\\\o7$$\"+;*[H7\"FFF\\\\o7$$\"+7tGC6FFFaco7$$\"+2diD6FFF[io7$$\"+-T' p7\"FFF(7$$\"+)\\-$G6FFFg]o7$$\"+%*3kH6FFF_^o7$$\"+*Gz48\"FFF\\\\o7$$ \"+%oZx:\"FFF\\\\o7$$\"+#f&3f6FFF\\jn7$$\"+))R Ug6FFF`ao7$$\"+%Qi<;\"FFFb[o7$$\"+z25j6FFF`ao7$$\"+u\"RW;\"FFFgin7$$\" +qvxl6FFF\\\\o7$$\"+)G'Ro6FFFaco7$$\"+1],r6FFFj^o7$$\"+lVKs6FFFfgo7$$ \"+CPjt6FFF_^o7$$\"+#3V\\<\"FFF(7$$\"+TCDw6FFFb[o7$$\"++=cx6FFFj^o7$$ \"+e6()y6FFFjjn7$$\"+<0=!=\"FFFi_o7$$\"+w)*[\"=\"FFF\\\\o7$$\"+N#*z#= \"FFF_^o7$$\"+%f3T=\"FFFb[o7$$\"+`zT&=\"FFF\\\\o7$$\"+7ts'=\"FFFaco7$$ \"+IgM*=\"FFF\\\\o7$$\"+ZZ'>>\"FFFg[o7$$\"+1TF$>\"FFFg[o7$$\"+kMe%>\"F FF\\jn7$$\"+BG*e>\"FFF`jn7$$\"+#=-s>\"FFF\\\\o7$$\"++4#)*>\"FFFaco7$$ \"+='RC?\"FFF(7$$\"+x*[P?\"FFFj^o7$$\"+O$e]?\"FFFaco7$$\"+%pnj?\"FFF\\ \\o7$$\"+`qn27FFF`ao7$$\"+CR%*37FFF\\jn7$$\"+'z5-@\"FFF(7$$\"+owZ67FFF jjn7$$\"+SXu77FFFg[o7$$\"+79,97FFF`ao7$$\"+%Gy_@\"FFFj^o7$$\"+c^a;7FFF _^o7$$\"+G?\"y@\"FFF\\\\o7$$\"++*y!>7FFF`ao7$$\"+sdM?7FFFaco7$$\"+WEh@ 7FFFj^o7$$\"+;&zGA\"FFF`ao7$$\"+)QYTA\"FFF\\\\o7$$\"+gKTD7FFF\\\\o7$$ \"+K,oE7FFF(7$$\"+/q%zA\"FFF`ao7$$\"+wQ@H7FFFb[o7$$\"+[2[I7FFF(7$$\"+? wuJ7FFF_^o7$$\"+#\\9IB\"FFFgin7$$\"+k8GM7FFF\\jn7$$\"+O#[bB\"FFF_^o7$$ \"+3^\"oB\"FFF\\\\o7$$\"+!)>3Q7FFFg[o7$$\"+_)[$R7FFFjjn7$$\"+CdhS7FFF` ao7$$\"+'f#)=C\"FFF(7$$\"+o%\\JC\"FFFjjn7$$\"+SjTW7FFFjjn7$$\"+7KoX7FF Fjjn7$$\"+%3]pC\"FFF(7$$\"+cp@[7FFFgin7$$\"+-Oi\\7FFF`ao7$$\"+Z-.^7FFF jjn7$$\"+#*oV_7FFFaco7$$\"+QN%QD\"FFFj^o7$$\"+$=]_D\"FFF(7$$\"+Golc7FF F\\\\o7$$\"+uM1e7FFF(7$$\"+>,Zf7FFFi_o7$$\"+kn(3E\"FFF\\jn7$$\"+5MGi7F FFg[o7$$\"+b+pj7FFF\\jn7$$\"++n4l7FFFj^o7$$\"+YL]m7FFFaco7$$\"+\"**4zE \"FFFb[o7$$\"+OmJp7FFF(7$$\"+#GB2F\"FFFaco7$$\"+G*H@F\"FFFj^o7$$\"+tl` t7FFF\\jn7$$\"+=K%\\F\"FFFjjn7$$\"+k)\\jF\"FFFjjn7$$\"+4lvx7FFF\\jn7$$ \"+aJ;z7FFF\\\\o7$$\"++)p0G\"FFF(7$$\"+Xk(>G\"FFF\\\\o7$$\"+!4$Q$G\"FF Fj^o7$$\"+O(*y%G\"FFFg[o7$$\"+\"Q'>'G\"FFF(7$$\"+EIg(G\"FFF\\jn7$$\"+s '4!*G\"FFF\\jn7$$\"+8FFFj ^o7$$\"+Vh.@8FFFj^o7$$\"+w+IA8FFF\\jn7$$\"+5ScB8FFFjjn7$$\"+W(>'G8FFFj ^o7$$\"+xanL8FFF(7$$\"+'*\\-N8FFFjjn7$$\"+9XPO8FFF`ao7$$\"+LSsP8FFF(7$ $\"+_N2R8FFFgin7$$\"+qIUS8FFFj^o7$$\"+*es:\"GP\"FFFaco7$$ \"+Q5;u8FFF`ao7$$\"+c0^v8FFF\\\\o7$$\"+v+'oP\"FFF_^o7$$\"+SH3y8FFFaco7 $$\"+/eIz8FFFi_o7$$\"+p'G0Q\"FFF\\jn7$$\"+M:v\"Q\"FFF(7$$\"+)RuHQ\"FFF (7$$\"+js>%Q\"FFFjjn7$$\"+G,U&Q\"FFF(7$$\"+#*Hk'Q\"FFF(7$$\"+@()3*Q\"F FFjjn7$$\"+]W`\"R\"FFF_^o7$$\"+9tv#R\"FFFb[o7$$\"+z,)RR\"FFF_^o7$$\"+W I?&R\"FFF(7$$\"+3fU'R\"FFF(7$$\"+s([wR\"FFF\\jn7$$\"+P;())R\"FFF\\\\o7 $$\"+-X4+9FFF[io7$$\"+mtJ,9FFFj^o7$$\"+I-a-9FFF(7$$\"+&4jPS\"FFFjjn7$$ \"+gf)\\S\"FFFgin7$$\"+C)3iS\"FFFgin7$$\"+#G+6T\"FFF\\\\o7$$\"+S<*fT\" FFFaco7$$\"+a'GtT\"FFFgin7$$\"+obm=9FFFj\\o7$$\"+#[-+U\"FFF_^o7$$\"+'R R8U\"FFFj\\o7$$\"+5jnA9FFF\\jn7$$\"+CK,C9FFFj^o7$$\"+Q,ND9FFF(7$$\"+^q oE9FFFfgo7$$\"+kR-G9FFFfgo7$$\"+y3OH9FFF`ao7$$\"+#z(pI9FFFfgo7$$\"+1Z. K9FFFi_o7$$\"+?;PL9FFF_^o7$$\"+M&3ZV\"FFFj^o7$$\"+[a/O9FFFejn7$$\"+iBQ P9FFFi_o7$$\"+w#>(Q9FFFgin7$$\"+!>c+W\"FFFgin7$$\"+/JRT9FFF`jn7$$\"+=+ tU9FFFjjn7$$\"+Kp1W9FFF[io7$$\"+YQSX9FFF[io7$$\"+g2uY9FFF(7$$\"+uw2[9F FFj\\o7$$\"+)e9%\\9FFFdho7$$\"+-:v]9FFFejn7$$\"+;%)3_9FFF\\jo7$$\"+I`U `9FFFj^o7$$\"+WAwa9FFF`ao7$$\"+e\"*4c9FFFjjn7$$\"+sgVd9FFF^[o7$$\"+&)H xe9FFFg[o7$$\"+;4.g9FFF[io7$$\"+[))Gh9FFFgin7$$\"+!yYDY\"FFFj^o7$$\"+7 Z!QY\"FFF_^o7$$\"+WE1l9FFF\\jo7$$\"+w0Km9FFF`ao7$$\"+3&yvY\"FFF_^o7$$ \"+Sk$)o9FFFfgo7$$\"+sV4q9FFFb[o7$$\"+/BNr9FFFceo7$$\"+O-hs9FFF`ao7$$ \"+n\"oQZ\"FFF\\\\o7$$\"+)4E^Z\"FFF`ao7$$\"+ISQw9FFFg[o7$$\"+i>kx9FFFg [o7$$\"+%*)**)y9FFFj^o7$$\"+Ey:![\"FFFb[o7$$\"+edT\"[\"FFF\\co7$$\"+!p tE[\"FFF_^o7$$\"+@;$R[\"FFF`jn7$$\"+_&*=&[\"FFF`jn7$$\"+%[Zk[\"FFFejn7 $$\"+;aq([\"FFF_^o7$$\"+[L'*)[\"FF$\"#:Fix7$$\"+!G@-\\\"FFF_]o7$$\"+7# z9\\\"FFFjjn7$$\"+Wrt#\\\"FFF\\jn7$$\"+w]*R\\\"FFF`jn7$$\"+3ID&\\\"FFF `jn7$$\"+S4^'\\\"FFFg]o7$$\"+s)ox\\\"FF$!#:Fix7$$\"+.o-*\\\"FFFceo7$$ \"+/*QU:FFFj\\o7$$\"+aZnV:FFFb[o7$$\"+5. '\\a\"FFF_^o7$$\"+meCY:FFFgin7$$\"+A9`Z:FFFgin7$$\"+zp\")[:FFF\\\\o7$$ \"+OD5]:FFFjjn7$$\"+#4)Q^:FFF^[o7$$\"+[On_:FFFj^o7$$\"+/#fRb\"FFFdho7$ $\"+gZCb:FFFj\\o7$$\"+<.`c:FF$F-Fix7$$\"+ue\"yb\"FFFb[o7$$\"+I95f:FFFg [o7$$\"+')pQg:FFF]^v7$$\"+UDnh:FFFg[o7$$\"+#*p&>d\"FFF`jn7$$\"+U9C#e\" FFF[io7$$\"++te$e\"FFF_^o7$$\"+eJ$\\e\"FFF]^v7$$\"+;!zie\"FFFg]o7$$\"+ v[i(e\"FFF`ev7$$\"+M2(*)e\"FFF`ev7$$\"+#f;.f\"FFFc\\v7$$\"+]Cm\"f\"FFF _^o7$$\"+3$3If\"FFF^[o7$$\"+mTN%f\"FFFj\\o7$$\"+C+q&f\"FFFc\\v7$$\"+#) e/(f\"FFF_^o7$$\"+T;FFFaco7$$\"+K8F@;FFF`ev7$$\"+!>H;FFFejn7$$\"+#z$\\I;FFFfgo7$$\"+9+zJ;FFF[io7$$\"+Ni 3L;FFFjjn7$$\"+cCQM;FFF\\[v7$$\"+y'ycj\"FFF[io7$$\"++\\(pj\"FFF^_o7$$ \"+@6FQ;FFFaco7$$\"+UtcR;FFF`ao7$$\"+kN'3k\"FFFjjn7$$\"+'yf@k\"FFFejn7 $$\"+2gXV;FFFaco7$$\"+GAvW;FFF_^o7$$\"+]%[gk\"FFFg[o7$$\"+sYMZ;FFFj\\o 7$$\"+$*3k[;FFF(7$$\"+9r$*\\;FFFb[o7$$\"+OLB^;FFF\\jn7$$\"+e&HDl\"FFFj ^o7$$\"+zd#Ql\"FFFg[o7$$\"++?7b;FFFi_o7$$\"+A#=kl\"FFFgin7$$\"+WWrd;FF Fgin7$$\"+l1,f;FFF\\jo7$$\"+')oIg;FFF_^o7$$\"+3Jgh;FFF^_o7$$\"+H$**Gm \"FF$!#;Fix7$$\"+]b>k;FFF_^o7$$\"+s<\\l;FFFb[o7$$\"+$*zym;FFF\\co7$$\" +mN6o;FF$\"#?Fix7$$\"+S\"R%p;FFFfgo7$$\"+9Zwq;FFFj^o7$$\"+)G!4s;FFF^_o 7$$\"+ieTt;FFF(7$$\"+N9uu;FFFj^o7$$\"+3q1w;FFF\\co7$$\"+#e#Rx;FFFb[o7$ $\"+c\"=(y;FFFg]o7$$\"+IP/!o\"FFFdho7$$\"+/$p8o\"FFF\\jo7$$\"+x[p#o\"F FF`jn7$$\"+]/-%o\"FFFb[o7$$\"+CgM&o\"FFFi_o7$$\"+)frmo\"FFFceo7$$\"+sr *zo\"FFFg[o7$$\"+i=FFF`ao7$$\"+>tQ?=FFF(7$$\"+)zr<#=FFF(7$$\"+yi:B=FFFg[o7$$\"+e2aC=FFF gin7$$\"+P_#f#=FFF_^o7$$\"+;(4t#=FFF\\jn7$$\"+'>%pG=FFF`ao7$$\"+bJYJ=F FFjjn7$$\"+9@BM=FFF(7$$\"+4/ZN=FFFj^o7$$\"+/(3n$=FFFaco7$$\"+**p%z$=FF Fgin7$$\"+%H&=R=FFFaco7$$\"+*eB/%=FFFj^o7$$\"+%)=mT=FFF\\jn7$$\"+z,!H% =FFFjjn7$$\"+u%QT%=FFFj^o7$$\"+pnPX=FFF`ao7$$\"+k]hY=FFFj^o7$$\"+fL&y% =FFFb[o7$$\"+a;4\\=FFFgin7$$\"+\\*H.&=FFFj^o7$$\"+W#o:&=FFF`ao7$$\"+Rl !G&=FFFi_o7$$\"+M[/a=FFF(7$$\"+9!)**e=FFFj^o7$$\"+%>^R'=FFFjjn7$$\"+*[ *=l=FFFjjn7$$\"+%yFk'=FFF\\\\o7$$\"+zgmn=FFFi_o7$$\"+uV!*o=FFFb[o7$$\" +pE9q=FFF`ao7$$\"+k4Qr=FFF\\\\o7$$\"+e#>E(=FFF`ao7$$\"+`v&Q(=FFFgin7$$ \"+MyW )=FFFj^o7$$\"+z+u&)=FFFgin7$$\"+g.1()=FFFaco7$$\"+S1Q))=FFF`ao7$$\"+@4 q*)=FFF`ao7$$\"+-7-\"*=FFF`ao7$$\"+#[TB*=FFF_^o7$$\"+jFFFfgo7$$\"+[Me,>FFF`jn7$$\"+GP!H!>FFFg[o7$$\"+4SA/>FFFi_o7 $$\"+!HWb!>FFF^[o7$$\"+rX'o!>FFF\\\\o7$$\"+_[=3>FFFg[o7$$\"+K^]4>FFFg] o7$$\"+8a#3\">FFF_^o7$$\"+%pX@\">FFFjjn7$$\"+ufY8>FFFb[o7$$\"+biy9>FFF j^o7$$\"+Ol5;>FFF\\jo7$$\"+8-P<>FFFb[o7$$\"+!*Qj=>FFFb[o7$$\"+nv*)>>FF Fg]o7$$\"+W7;@>FFFj\\o7$$\"+@\\UA>FFF\\jo7$$\"+)f)oB>FFF`ao7$$\"+wA&\\ #>FFF[io7$$\"+`f@E>FFF\\\\o7$$\"+I'zu#>FFFgin7$$\"+3LuG>FFF_^o7$$\"+&) p+I>FFF\\jn7$$\"+i1FJ>FFFaco7$$\"+RV`K>FFFjjn7$$\"+;!)zL>FFF(7$$\"+$ph ]$>FFFdho7$$\"+q`KO>FFFb[o7$$\"+Z!*eP>FFFjjn7$$\"+CF&)Q>FFFg]o7$$\"+,k 6S>FFFaco7$$\"+y+QT>FFF[io7$$\"+bPkU>FFF(7$$\"+Ku!R%>FFF\\\\o7$$\"+56< X>FFFg[o7$$\"+(yMk%>FFFb[o7$$\"+k%)pZ>FFFceo7$$\"+U@'*[>FFF`ao7$$\"+>e A]>FFF\\co7$$\"+'\\*[^>FFFg[o7$$\"+tJv_>FFF\\\\o7$$\"+]o,a>FFFfgo7$$\" +F0Gb>FFFg]o7$$\"+/Uac>FFF\\co7$$\"+)>-z&>FFFj^o7$$\"+\">g#f>FFFg]o7$$ \"+%==1'>FFF[io7$$\"+yh(>'>FFF(7$$\"+sTLj>FFFejn7$$\"+m@pk>FFFc\\v7$$ \"+g,0m>FFF\\jo7$$\"+`\"3u'>FFF^[o7$$\"+Yhwo>FFF\\jn7$$\"+ST7q>FFF\\jn 7$$\"+M@[r>FFFj\\o7$$\"+G,%G(>FFFb[o7$$\"+A\")>u>FFFgin7$$\"+:hbv>FFFc eo7$$\"+3T\"p(>FFF_]o7$$\"+-@Fy>FFF(7$$\"+'4I'z>FFF`jn7$$\"+*3))4)>FFF ceo7$$\"+#3YB)>FFF[io7$$\"+wSq$)>FF$!#9Fix7$$\"+q?1&)>FFF(7$$\"+k+U')> FFFg]o7$$\"+e!yx)>FFF\\jo7$$\"+^g8*)>FFFg]o7$$\"+WS\\!*>FFF`ao7$$\"+Q? &=*>FFF[io7$$\"+K+@$*>FFFgin7$$\"+E!oX*>FFFjjn7$$\"+?g#f*>FFFg[o7$$\"+ 8SG(*>FFFfgo7$$\"+1?k)*>FF$!#?Fix7$$Fh^lF)F]^v-%'COLOURG6&%$RGBGF(F($ \"*++++\"F\\io-%+AXESLABELSG6$Q\"x6\"Q!F`^z-%%VIEWG6$;F(Fe]z%(DEFAULTG " 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }} }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 136 "The so lution has been constructed in such a way that up to a point it will p roduce more accurate values when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "ev alf[15](plot('gn1'(x)-g(x),x=0..2,color=blue,numpoints=100));" }} {PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7c`m 7$$\"\"!F)F(7$$\"0IHHHz?k#!#<$!#G!#97$$\"0geeeeTG&F-$!$+#F07$$\"0DBBB) >0mF-$!#YF07$$\"0!zyyyBEzF-$\"$R\"F07$$\"0b___xsC*F-$\"#8F07$$\"0srrrJ o0\"!#;$!#&*F07$$\"0lkkkR5K\"FH$!$k\"F07$$\"0edddZ_e\"FH$!$f&F07$$\"0/ //a^tr\"FH$!$>%F07$$\"0]]]]b%\\=FH$!#8F07$$\"0ttt[2b\">FH$\"$l\"F07$$ \"0'ppp%f:)>FH$\"$M#F07$$\"0???X6w/#FH$\"$]\"F07$$\"0VVVVjO6#FH$!#tF07 $$\"011112K.$FH$!$Q%F07$$\"0pooo]F&RFH$!$8(F07$$\"0WV$fg,#3%FH$!$\"*)F 07$$\"0===V\"G6UFH$!$8*F07$$\"0$HH/oaSVFH$!$+(F07$$\"0onn<7)pWFH$!$i$F 07$$\"0=<<#HMGZFH$!$6%F07$$\"0nmmmto)\\FH$!$\"oF07$$\"0:;;T/aC&FH$!$e( F07$$\"0lll:NR]&FH$!%y5F07$$\"0:::!fYidFH$!$#*)F07$$\"0lkkk'*4-'FH$!$y $F07$$\"0bbbb&[TlFH$!$\\)F07$$\"0XYYYu>1(FH$!%v7F07$$\"0!>>>*=AK(FH$!% +5F07$$\"0NPPPjCe(FH$!$[&F07$$\"0555g&e7xFH$!$*oF07$$\"0!GGGyqUyFH$!%2 5F07$$\"0bbb0IG(zFH$!%M5F07$$\"0GGGG_H5)FH$!%?5F07$$\"0544%)f>O)FH$!%B 6F07$$\"0!**)*)Rn4i)FH$!%19F07$$\"0qqq&\\(*z))FH$!%>8F07$$\"0]^^^#)*Q \"*FH$!$:)F07$$\"0588j(*pl*FH$!%+7F07$$\"0ZZZF,v,\"!#:$!%%Q\"F07$$\"0S SS!yg47F]x$!%=;F07$$\"0zyy)H_39F]x$!%nF07$$\"0====&4Z9F]x$!%.>F07$$\"0)zzzD&*f9F]x$!%iv0F;F]x$!%k>F07$$\"0RQQot)R;F] x$!%n?F07$$\"054fw\"GY;F]x$!%+@F07$$\"0!)zz%)*o_;F]x$!%8@F07$$\"0^]+$z 4f;F]x$!%2@F07$$\"0A@@,1bm\"F]x$!%w?F07$$\"0///MQ6p\"F]x$!%^=F]x$!%`=F07$$\"0qq?)fmX=F]x$!%:?F07 $$\"0BBB)>.s=F]x$!%SAF07$$\"0O'Q#[B'y=F]x$!%zAF07$$\"0]\\C)\\@&)=F]x$! %)H#F07$$\"0j7D[1=*=F]x$!%,BF07$$\"0wvD)zR)*=F]x$!%!G#F07$$\"0--F)4e6> F]x$!%x@F07$$\"0GGG)RwC>F]x$!%)*>F07$$\"0!33$)*H6&>F]x$!%(f\"F07$$\"0L LL)f\\x>F]x$!%^:F07$$\"0'ee$)>'Q+#F]x$!%z>F07$$\"0QQQ)zAI?F]x$!%Q?F07$ $\"0DDvdR=/#F]x$!%D?F07$$\"0777<^M0#F]x$!%#F]x$!%S?F07$$\"0GGG[8g @#F]x$!%GF07$$\"0%RRR(>kb#F]x$!%:CF07$$\"0 qpp*3n#e#F]x$!%PDF07$$\"0eddZ'z&f#F]x$!%CDF07$$\"0YXX0A*3EF]x$!%0DF07$ $\"0MLLjZ?i#F]x$!%,DF07$$\"0@@@@t^j#F]x$!%@DF07$$\"0777#*odo#F]x$!%2HF 07$$\"0...jkjt#F]x$!%JF07$$\"0DDD0R8-$F]x$!%MMF07$$\"0%[[Bgl[IF ]x$!%\")QF07$$\"0WWW*H(f2$F]x$!%AUF07$$\"0M%=PA!G3$F]x$!%nUF07$$\"0CC* z9j*3$F]x$!%*G%F07$$\"09kEsgk4$F]x$!%)G%F07$$\"0//a'**G.JF]x$!%lUF07$$ \"0%Q)3X[p6$F]x$!%PTF07$$\"0kjj$pgIJF]x$!%;RF07$$\"0WV=UlU9$F]x$!%:OF0 7$$\"0CBt!R#z:$F]x$!%mKF07$$\"0/.GR#erJF]x$!%1HF07$$\"0$GGy3C&=$F]x$!% (e#F07$$\"0iiPO**))>$F]x$!%eBF07$$\"0UU#\\yb7KF]x$!%oAF07$$\"0AAZL;iA$ F]x$!%_BF07$$\"0---#[()RKF]x$!%@EF07$$\"0!**)*[`W^KF]x$!%tHF07$$\"0yxx (e,jKF]x$!%(Q$F07$$\"0mllS'euKF]x$!%yPF07$$\"0a``$p:'G$F]x$!%9SF07$$\" 0IHH*zH4LF]x$!%@SF07$$\"00000RCL$F]x$!%,SF07$$\"0!333,ebLF]x$!%&*RF07$ $\"0ccc;@(yLF]x$!%CSF07$$\"0KKKAi=S$F]x$!%&4%F07$$\"0333G.]U$F]x$!%#>% F07$$\"0qq?$=#>X$F]x$!%\"H%F07$$\"0LLLQS)yMF]x$!%:VF07$$\"0'ffM*ed]$F] x$!%LUF07$$\"0eee[xE`$F]x$!%kSF07$$\"0@@r.'ffNF]x$!%()QF07$$\"0%QQ)e9l e$F]x$!%=QF07$$\"0YY'RJV8OF]x$!%XRF07$$\"0444p^.k$F]x$!%/UF07$$\"0qqqg hct$F]x$!%iUF07$$\"0KKK_r4$QF]xFdhm7$$\"0^^^ccK)QF]x$!%$G%F07$$\"0qqqg Tb$RF]x$!%/VF]x$!%6VF07$$\"0OO'))\\=%F07$$\"0mlllbqW%F]x $!%*=%F07$$\"0CBBQgZ\\%F]x$!%NTF07$$\"0\"333^YUXF]x$!%GSF07$$\"0??&*G \"RaXF]x$!%3SF07$$\"0gf4ZASh%F]x$!%cSF07$$\"0'fffX(yj%F]x$!%ITF07$$ \"0CCCa'ySZF]x$!%vRF07$$\"0____)pV[F]x$!%+RF07$$\"0qq?oA/([F]x$!%EQF07 $$\"0)))))Qo9(*[F]x$!%_PF07$$\"0(zH<*30\"\\F]x$!%FPF07$$\"012d*4(Q#\\F ]x$!%;PF07$$\"0;;T2Ls$\\F]x$!%?PF07$$\"0DDD:&f]\\F]x$!%WPF07$$\"0UV$4$ >t(\\F]x$!%NQF07$$\"0ghhYVS+&F]x$!%SRF07$$\"0:m`]C2,&F]x$!%fRF07$$\"0q qXa0u,&F]x$!%tRF07$$\"0DvPe'3C]F]x$!%zRF07$$\"0!)zHin2.&F]x$!%!)RF07$$ \"0!*)Q,(HT/&F]x$!%_RF07$$\"0)zzz<\\d]F]x$!%#*QF07$$\"0!333ca]^F]x$!%Y OF07$$\"0kjjV*fV_F]x$!%JMF07$$\"0SV=-ihD&F]x$!%%R$F07$$\"0?BtgC(o_F]x$ !%nLF07$$\"0+.G>(G\"G&F]x$!%eLF07$$\"0!GGy(\\QH&F]xF`hn7$$\"0SU#\\\\(* =`F]x$!%NMF07$$\"0+--7+TM&F]x$!%_NF07$$\"0!=o0Fmc`F]x$!%6OF07$$\"0gh6H D#p`F]x$!%bOF07$$\"0STm(yy\"Q&F]x$!%yOF07$$\"0?@@Y]VR&F]x$!%nOF07$$\"0 !33LcZ>aF]x$!%ONF07$$\"0SSS!3gWaF]x$!%@LF07$$\"0XWW%yU[bF]x$!%6KF07$$ \"0[[[)[D_cF]x$!%(*GF07$$\"0444*QSbeF]x$!%?FF07$$\"0++++h>0'F]x$!&eE#F ]x7$$\"0&RR*y@l5'F]x$!&Xi#F]x7$$\"0!zyyD3hhF]x$!&6s#F]x7$$\"0!\\[tHO)= 'F]x$!&/T#F]x7$$\"0&==oLk:iF]x$!&z*>F]x7$$\"05coYjCA'F]x$!&d$>F]x7$$\" 0IIbc$GHiF]x$!&$3>F]x7$$\"0b/Um.hB'F]x$!&h!>F]x7$$\"0!)yGwBHC'F]x$!&[! >F]x7$$\"0IF-'RcciF]x$!&\"4>F]x7$$\"0wvv:/-F'F]x$!&(>>F]x7$$\"0bbb!or% H'F]x$!&'Q>F]x7$$\"0NNNXH#>jF]x$!&<\">F]x7$$\"0:::5UPM'F]x$!&Bz\"F]x7$ $\"0&\\\\\\ZDojF]x$!&$p:F]x7$$\"0baa/!GF]x7$$\"0!po=:3%e'F]x$!&D,# F]x7$$\"0511wnrf'F]x$!&%G?F]x7$$\"0IDD+a-h'F]x$!&S$>F]x7$$\"0XWWCSLi'F ]x$!&'=VpF]x$\"%+_F]x7$$\"0]]]gE\"ppF]x$\"%MZF]x7$$\"0+,,m#) 4-(F]x$\"%*)fF]x7$$\"0^^^rQG2(F]x$\"%*G)F]x7$$\"0:<[>(F]x$\"%?()F]x7$$\"0X[[B;#>sF ]x$\"%$)*)F]x7$$\"0IJ\")[7OC(F]x$\"%g\"*F]x7$$\"0999u3!osF]x$\"%F\"*F] x7$$\"0bbb&)4NH(F]x$\"%4*)F]x7$$\"0&ppp4,>tF]x$\"%*e)F]x7$$\"0qnn_h8+P(F]x$\"%T))F]x7$$\"0giiU:5U(F]x$\"&F6\"F]x7$$\"0XXXl/*Q)F]x$\"&IQ\"F]x7$$\"0qr@>PXT)F]x$\" &wO\"F]x7$$\"0:;;TK+W)F]x$\"&)\\8F]x7$$\"0gg5jFbY)F]x$\"&*[8F]x7$$\"00 00&G-\"\\)F]x$\"&yM\"F]x7$$\"0!==ox(y`)F]x$\"&\\K\"F]x7$$\"0geeoKZe)F] x$\"&xG\"F]x7$$\"0+(pW,;3')F]x$\"&hG\"F]x7$$\"0NNNg(eJ')F]x$\"&UI\"F]x 7$$\"0vtB1:]l)F]x$\"&oL\"F]x7$$\"0777_U%y')F]x$\"&#p8F]x7$$\"0vwwcWey) F]x$\"&(>8F]x7$$\"0TTThYK*))F]x$\"&>D\"F]x7$$\"0?==.is\"*)F]x$\"&cC\"F ]x7$$\"0&\\\\\\uFT*)F]x$\"&UE\"F]x7$$\"0qrr'GHl*)F]x$\"&>I\"F]x7$$\"0] [[G3$*)*)F]x$\"&)R8F]x7$$\"0+--7Rt.*F]x$\"&!=8F]x7$$\"0bbb&*p`3*F]x$\" &xE\"F]x7$$\"0]Z(*Rv46*F]x$\"&'o7F]x7$$\"0SRR%3eO\"*F]x$\"&=E\"F]x7$$ \"0IJ\")G'=i\"*F]x$\"&&R7F]x7$$\"0DBBt\"z(=*F]x$\"&y?\"F]x7$$\"0?:l<(R 8#*F]x$\"&Q=\"F]x7$$\"0522i-!R#*F]x$\"&u=\"F]x7$$\"0+**[13YE*F]x$\"&BA \"F]x7$$\"0\"444N@!H*F]x$\"&CF\"F]x7$$\"0!===UC)Q*F]x$\"&S>\"F]x7$$\"0 tss#\\F'[*F]x$\"&r9\"F]x7$$\"0&GG`v[8&*F]x$\"&\"36F]x7$$\"0&HHz,qS&*F] x$\"&C4\"F]x7$$\"00.`!G\"zc*F]x$\"&v6\"F]x7$$\"0:88VD^f*F]x$\"&d<\"F]x 7$$\"0?=VuJ(3'*F]x$\"&b?\"F]x7$$\"0DBt0QBi*F]x$\"&vA\"F]x7$$\"0IG.PWfj *F]x$\"&ZB\"F]x7$$\"0NLLo]&\\'*F]x$\"&6A\"F]x7$$\"0XV$4Lww'*F]x$\"&/9 \"F]x7$$\"0```$f(Rq*F]x$\"&[4\"F]x7$$\"0NPPZK#)z*F]x$\"&90\"F]x7$$\"0@ @@,*[#*)*F]x$\"&m+\"F]x7$$\"0bcc^M#>**F]x$\"&s2\"F]x7$$\"0!>>>+)f%**F] x$\"&s8\"F]x7$$\"0gf4x_$f**F]x$\"&U9\"F]x7$$\"0DFF_DF(**F]x$\"&s7\"F]x 7$$\"0!\\\\u#)4')**F]x$\"&i3\"F]x7$$\"0gii-r%****F]x$\"&(G5F]x7$$\"0.. yP%G,5F0$\"%n(*F]x7$$\"0!)zHl@E+\"F0$\"%1'*F]x7$$\"0cc\"G*eR+\"F0$\"%3 '*F]x7$$\"0LLL?'H05F0$\"%K'*F]x7$$\"0'oo`2(z+\"F0Fbaq7$$\"0SSSIX1,\"F0 $\"%J%*F]x7$$\"0OO'G/_:5F0$\"%M%)F]x7$$\"0KKKb&R?5F0$\"%B!)F]x7$$\"0GG ynq_-\"F0$\"%W$*F]x7$$\"0CCC!e9I5F0$\"&$=5F]x7$$\"0FFF/63/\"F0$\"%`xF] x7$$\"0IIIGw90\"F0$\"%,cF]x7$$\"0;m.dEE0\"F0$\"%f`F]x7$$\"0--x&ox`5F0$ \"%F_F]x7$$\"0)y.Xr#\\0\"F0$\"%C_F]x7$$\"0utBVxg0\"F0$\"%z`F]x7$$\"0YX q+y$e5F0$\"%;hF]x7$$\"0<<ST6F0$!%) y#F]x7$$\"099k\"=WY6F0$!%]NF]x7$$\"0\"33[;[^6F0$!%gjF]x7$$\"0**)*)\\%[ 3<\"F0$!%g%)F]x7$$\"098jX#3w6F0$!%HtF]x7$$\"0GFFY;8=\"F0$!%PeF]x7$$\"0 UT\"p/b'=\"F0$!%EzF]x7$$\"0cbbZ%y\">\"F0$!&o-\"F]x7$$\"0333Dh7F0$!&Z- \"F]x7$$\"0-_9gD4A\"F0$!&]/\"F]x7$$\"0AAA6QAA\"F0$!&&y5F]x7$$\"0iiP8j[ A\"F0$!&+;\"F]x7$$\"0..`:)[F7F0$!&))=\"F]x7$$\"0WVo<8,B\"F0$!&q=\"F]x7 $$\"0%QQ)>QFB\"F0$!&i=\"F]x7$$\"0[[[IVAC\"F0$!&Y>\"F]x7$$\"0888T[*yx7F0$!&SB \"F]x7$$\"0,,,9?GG\"F0$!&aC\"F]x7$$\"0)yG6cL&G\"F0$!&FE\"F]x7$$\"0uuC3 ^yG\"F0$!&2G\"F]x7$$\"0hhObm.H\"F0$!&>H\"F]x7$$\"0[[[-#)GH\"F0$!&4H\"F ]x7$$\"0nnHI\"F0$!&*z7F]x7$$\"011c6QzI \"F0$!&,D\"F]x7$$\"0DDD\"o&HJ\"F0$!&(G7F]x7$$\"0444'))>=8F0$!&9F\"F]x7 $$\"0$HH44WB8F0$!&$=8F]x7$$\"0&[[L>1E8F0$!&1I\"F]x7$$\"0xww&HoG8F0$!&y E\"F]x7$$\"0po=)RIJ8F0$!&gE\"F]x7$$\"0hgg+DRL\"F0$!&oE\"F]x7$$\"0ED]1R jL\"F0$!&DE\"F]x7$$\"0!**)R7`(Q8F0$!&vC\"F]x7$$\"0baH=n6M\"F0$!&JA\"F] x7$$\"0?>>C\"eV8F0$!&()>\"F]x7$$\"0%Q)3I&*fM\"F0$!&h=\"F]x7$$\"0\\[)f$ 4%[8F0$!&c>\"F]x7$$\"098)=M#3N\"F0$!&!G7F]x7$$\"0yxxZPKN\"F0$!&8F\"F]x 7$$\"0Ct5ktWN\"F0$!&9H\"F]x7$$\"0poV!)4dN\"F0$!&TI\"F]x7$$\"09kw'f%pN \"F0$!&!38F]x7$$\"0gf48#=e8F0$!&'*H\"F]x7$$\"0^]vXa1O\"F0$!&9F0$!&<3\"F]x7$$\"0!33=qtC9F0$!&a=\"F]x7 $$\"0__-G#zH9F0$!&!R5F]x7$$\"0CCCaZ[V\"F0$!%r**F]x7$$\"0JJ\"y!=uV\"F0$ !%#)**F]x7$$\"0QQQh))*R9F0$!%;)*F]x7$$\"0XX&\\\"fDW\"F0$!%n$*F]x7$$\"0 ___oH^W\"F0$!%!z)F]x7$$\"011J&\\TY9F0$!%G&)F]x7$$\"0ff4A+xW\"F0$!%S$)F ]x7$$\"078))[&)*[9F0$!%d#)F]x7$$\"0mmmvq-X\"F0$!%)G)F]x7$$\"0utBHTGX\" F0$!%#y)F]x7$$\"0\"33G=Tb9F0$!%`'*F]x7$$\"0#===J'[Y\"F0$!%x))F]x7$$\"0 $GG3WJu9F0$!%K\")F]x7$$\"0zyGz^$z9F0$!%.rF]x7$$\"0vuu<*Q%[\"F0$!%0fF]x 7$$\"0rq?cE%*[\"F0$!%/nF]x7$$\"0nmm%RY%\\\"F0$!%y))F]x7$$\"0kjj)HY*\\ \"F0$!%T\")F]x7$$\"0hgg-iW]\"F0$!%FbF]x7$$\"054fahp]\"F0$!%wbF]x7$$\"0 edd1h%4:F0$!%ecF]x7$$\"0#=oD3r5:F0$!%GcF]x7$$\"011ceg>^\"F0$!%5bF]x7$$ \"0IIbM5K^\"F0$!%r_F]x7$$\"0baa5gW^\"F0$!%O\\F]x7$$\"0SSS_2)>:F0$!%FFF ]x7$$\"0EEE%\\:D:F0$F_]lF]x7$$\"0777O-0`\"F0$!%T\\F]x7$$\"0)zzz(\\e`\" F0$!%TqF]x7$$\"0]]]ko0a\"F0$!%VLF]x7$$\"0...^(GX:F0$!%$4\"F]x7$$\"0IHH %pkZ:F0$!%z7F]x7$$\"0cbbP1+b\"F0$!%-:F]x7$$\"0po=4'=^:F0$!%4:F]x7$$\"0 #==3eO_:F0$!%C8F]x7$$\"0&\\\\Cba`:F0$!$c*F]x7$$\"0333CDZb\"F0$!$Y$F]x7 $$\"0<<<$)p,c\"F0$\"%J[F]x7$$\"0EEEU9cc\"F0$\"%w)*F]x7$$\"0!**['*\\Hm: F0$\"&/,\"F]x7$$\"0``.dvpc\"F0$\"&9-\"F]x7$$\"0;#*F]x7$$\"0NNN,f5d\"F0Fe fq7$$\"0!**)*38yt:F0$\"%;QF]x7$$\"0WWWg.ld\"F0$!%/5F]x7$$\"077iEg*y:F0 $!%%[%F]x7$$\"0!)zz#pT\"e\"F0$!%hbF]x7$$\"0[Z(*etQe\"F0$!%%3$F]x7$$\"0 :::DIje\"F0$\"%hHF]x7$$\"0)*)R#eeve\"F0$\"%vnF]x7$$\"0#GG8py)e\"F0$\"& d/\"F]x7$$\"0mmTC:+f\"F0$\"&&=8F]x7$$\"0]]]dV7f\"F0$\"&#)R\"F]x7$$\"0= =oB+Pf\"F0$\"&OR\"F]x7$$\"0'ee)*o:'f\"F0$\"&#*Q\"F]x7$$\"0&\\*pj(e)f\" F0$\"&XR\"F]x7$$\"0//aP=5g\"F0$\"&#=9F]x7$$\"088Q6\\Mg\"F0$\"&EY\"F]x7 $$\"0AAA&)zeg\"F0$\"&x]\"F]x7$$\"0wE9A&42;F0$\"&z_\"F]x7$$\"0JJ1f5$3;F 0$\"&-a\"F]x7$$\"0'e$)ff_4;F0$\"&Da\"F]x7$$\"0SS!H8u5;F0$\"&\\`\"F]x7$ $\"0]\\u1sJh\"F0$\"&C\\\"F]x7$$\"0fee!Gg:;F0$\"&FU\"F]x7$$\"0YXX5egi\" F0$\"&Nb\"F]x7$$\"0KKKS8lj\"F0$\"&;h\"F]x7$$\"0&\\\\*>iF]x7$$\"0`__ia\"QF]x7$$\"011c\"pzUF]x7$$\"0gff?Ruu\"F0$\"&Q*=F]x7$$\"098j \\\"3_s%40\"=F0$\"&H&=F]x7$$ \"0cb0P\"*H\"=F0$\"&d$=F]x7$$\"099*oKZ:=F0$\"&`#=F]x7$$\"0tss;bz\"=F0$ \"&&H=F]x7$$\"0+++/R/#=F0$\"&'\\=F]x7$$\"0GFF\"H#H#=F0$\"&m(=F]x7$$\"0 baay1a#=F0$\"&K*=F]x7$$\"0#==e1*y#=F0$\"&G)=F]x7$$\"0444`u.$=F0$\"&g%= F]x7$$\"0OOOSeG$=F0$\"&%H=F]x7$$\"0kjjFU`$=F0$\"&*H=F]x7$$\"0\"44\\h#y $=F0$\"&)G=F]x7$$\"0++]$H*G%=F0$\"&.!=F]x7$$\"0444sfz%=F0$\"&Jw\"F]x7$ $\"0==o]EI&=F0$\"&tz\"F]x7$$\"0FFFH$4e=F0$\"&I&=F]x7$$\"0\"444Z$)o=F0$ \"&Fw\"F]x7$$\"0baa7w&z=F0$\"&Go\"F]x7$$\"0)p>K$Q?)=F0$\"&gn\"F]x7$$\" 0SR*Q0]%)=F0$\"&lp\"F]x7$$\"0#=oXF'p)=F0$\"&)QF0$\"&Wi\"F]x7$$\"0JJJ*yr=>F0$\"&de \"F]x7$$\"0GGG2;8#>F0$\"&fk\"F]x7$$\"0DDDD9R#>F0$\"&Hq\"F]x7$$\"0utBM8 _#>F0$\"&Qr\"F]x7$$\"0AAAV7l#>F0$\"&xq\"F]x7$$\"0qq?_6y#>F0$\"&Bo\"F]x 7$$\"0>>>h5\"H>F0$\"&-k\"F]x7$$\"0onF0$\"&te\"F]x7$$\"0;;;z3<$>F 0$\"&ca\"F]x7$$\"0kk9)y+L>F0$\"&\"Q:F]x7$$\"0888(pIM>F0$\"&s`\"F]x7$$ \"0555:0p$>F0$\"&9a\"F]x7$$\"0222L.&R>F0$\"&q`\"F]x7$$\"0!33y$)oW>F0$ \"&#e9F]x7$$\"0aaaUt)\\>F0$\"&$o8F]x7$$\"0GGGZe]&>F0$\"&(R9F]x7$$\"0-- -_V-'>F0$\"&\")f\"F]x7$$\"0JJ\"3u*['>F0$\"&6^\"F]x7$$\"0gggH^&p>F0$\"& \\L\"F]x7$$\"0DD+Cy=(>F0$\"&xL\"F]x7$$\"0!**)R=0U(>F0$\"&XM\"F]x7$$\"0 Asflo`(>F0$\"&KM\"F]x7$$\"0aaz7Kl(>F0$\"&uL\"F]x7$$\"0'o$**f&px>F0$\"& >K\"F]x7$$\"0>>>2f)y>F0$\"&0I\"F]x7$$\"0SRRIWT)>F0$\"&u6\"F]x7$$\"0gff `H%*)>F0$\"&o,\"F]x7$$\"0!)zzw9Z*>F0$\"&c@\"F]x7$$\"\"#F)$\"&TY\"F]x-% 'COLOURG6&%$RGBGF(F($\"*++++\"!\")-%+AXESLABELSG6$Q\"x6\"Q!Fgev-%%VIEW G6$;F(Fhdv%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 " " 0 "" {TEXT -1 123 "We can investigate the error obtained by applying polynomial interpolation compared with using (partial) Runge-Kutta st eps." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 194 "de := diff(y(x),x)=(8*sin(7*x)-3*y(x))/(6*x+1);\nic \+ := y(0)=1;\ngn2 := desolveRK(\{de,ic\},y(x),x=0..2,method=rk56b,output =rkstep);\nevalf[15](plot('gn2'(x)-g(x),x=0..2,color=magenta,numpoints =100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#% \"xGF,*&,&*&\"\")\"\"\"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F1!\" \"F1,&*&\"\"'F1F,F1F1F1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/ -%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 693 138 138 {PLOTDATA 2 "6&-%'CURVESG6#7c`l7$$\"\"!F)F(7$$\"0VVVVjO6#!#;$!$D#!#97$ $\"0pooo]F&RF-$!$,&F07$$\"0lkkk'*4-'F-$!$?(F07$$\"0GGGG_H5)F-$!%O5F07$ $\"0ZZZF,v,\"!#:$!%#>\"F07$$\"0SSS!yg47FC$!%_8F07$$\"0zyy)H_39FC$!%3:F 07$$\"0cbbNTUh\"FC$!%r;F07$$\"0===)**H>=FC$!%\\=F07$$\"0BBB)>.s=FC$!%O =F07$$\"0GGG)RwC>FC$!%L=F07$$\"0LLL)f\\x>FC$!%)*=F07$$\"0QQQ)zAI?FC$!% U?F07$$\"0'eeeVnw?FC$!%I?F07$$\"0LLLt?J7#FC$!%??F07$$\"0122#RMY@FC$!%9 ?F07$$\"0!333rcp@FCFep7$$\"0aaaH!z#>#FC$!%@?F07$$\"0GGG[8g@#FCFfo7$$\" 0+++5,$oAFC$!%3AF07$$\"0srrr)e?BFC$!%`AF07$$\"0WVVLwGP#FC$!%QAF07$$\"0 :::&R;DCFC$!%DAF07$$\"0===eo,`#FC$!%KBF07$$\"0@@@@t^j#FC$!%BDF07$$\"07 77#*odo#FC$!%4DF07$$\"0...jkjt#FC$!%*\\#F07$$\"0[[[[i;w#FC$!%+DF07$$\" 0%RRR.'py#FC$!%7DF07$$\"0SRR>eA\"GFC$!%VDF07$$\"0&[[[gbPGFC$!%/EF07$$ \"0&\\\\*z,N)GFC$!%fGF07$$\"0000bZ%HHFC$!%eHF07$$\"0:::I$RvHFC$!%VHF07 $$\"0DDD0R8-$FC$!%IHF07$$\"0WWW*H(f2$FC$!%=HF07$$\"0kjj$pgIJFCF`v7$$\" 0$GGy3C&=$FC$!%GIF07$$\"0---#[()RKFC$!%ULF07$$\"0yxx(e,jKFC$!%*f$F07$$ \"0a``$p:'G$FC$!%qRF07$$\"0[Z(*>U>H$FC$!%ISF07$$\"0UTTYFxH$FC$!%FSF07$ $\"0ON&GF^.LFC$!%DSF07$$\"0IHH*zH4LFC$!%BSF07$$\"0=<<_o3K$FC$!%=SF07$$ \"00000RCL$FC$!%8SF07$$\"0ccc;@(yLFC$!%&*RF07$$\"0333G.]U$FC$!%xRF07$$ \"0LLLQS)yMFC$!%hRF07$$\"0eee[xE`$FC$!%iRF07$$\"0%QQ)e9le$FC$!%7SF07$$ \"0444p^.k$FC$!%#>%F07$$\"0IH/VlAl$FC$!%iUF07$$\"0]\\*p\"zTm$FC$!%)G%F 07$$\"0qp%4H4wOFC$!%%G%F07$$\"0!**)*[m+)o$FC$!%zUF07$$\"0II!GT$=r$FC$! %qUF07$$\"0qqqghct$FC$!%gUF07$$\"0^^^c;Ly$FC$!%UUF07$$\"0KKK_r4$QFC$!% DUF07$$\"0^^^ccK)QFC$!%5UF07$$\"0qqqgTb$RFC$!%8UF07$$\"0!**)*[m#y)RFC$ !%^UF07$$\"0444p6,/%FC$!%XVF07$$\"0%RRRroRTFC$!%3VF07$$\"0zyyei#RUFC$! %sUF07$$\"0mlllbqW%FC$!%&=%F07$$\"0\"333^YUXFC$!%`TF07$$\"0'fffX(yj%FC $!%7TF07$$\"0555bI$*o%FC$!%rSF07$$\"0CCCa'ySZFC$!%yRF07$$\"0QQQ`UAz%FC $!%_RF07$$\"0____)pV[FC$!%ORF07$$\"0)zzz<\\d]FC$!%)y$F07$$\"0kjjV*fV_F C$!%8OF07$$\"0SSS!3gWaFC$!%KLF07$$\"0llS***3^aFC$!%*H$F07$$\"0!44%=zvX &FC$!%gKF07$$\"0:;TPoSY&FC$!%_KF07$$\"0STTcd0Z&FC$!%]KF07$$\"0!>>Wf`$[ &FC$!%YKF07$$\"0SUUK9l\\&FC$!%VKF07$$\"0SVV3rC_&FC$!%PKF07$$\"0XWW%yU[ bFC$!%LKF07$$\"0XYYOT.g&FC$!%?KF07$$\"0[[[)[D_cFC$!%/KF07$$\"0!)yyQHQv &FC$!%*4$F07$$\"0444*QSbeFC$!%=FF07$$\"0baaW#o`fFC$!%+FF07$$\"0++++h>0 'FC$!&=n#FC7$$\"0!zyyD3hhFC$!&6Y#FC7$$\"0wvv:/-F'FC$!&E!>FC7$$\"0NNNXH #>jFC$!&s*=FC7$$\"0&\\\\\\ZDojFC$!&-*=FC7$$\"0baa/!GFC7$$\"0+)H#HVvo'FC$\"%(R\"FC7$$\"0vuCP,%*p'F C$\"%YZFC7$$\"0]^EXf7r'FC$\"%RZFC7$$\"0IGG`VpFC$\"%5\\FC7$$\"0]]]gE\"ppFC$\"%F^FC7$$\"0+,,m#)4-(FC$ \"%\"='FC7$$\"0^^^rQG2(FC$\"%)G)FC7$$\"0!GGGPUqrFC$\"%L#)FC7$$\"0999u3 !osFC$\"%S#)FC7$$\"0!)zz>8+P(FC$\"%4!*FC7$$\"0XXXl\"FC7$$\"0IEw8y(\\xFC$\"&9A\"FC7$$\"0:88jze x(FC$\"&1F\"FC7$$\"0!\\t/]S#y(FC$\"&\")G\"FC7$$\"0gc\"y.$*)y(FC$\"&WI \"FC7$$\"0Iy:vbaz(FC$\"&NI\"FC7$$\"0++]7\")>!yFC$\"&HI\"FC7$$\"0XV=(=. :yFC$\"&9I\"FC7$$\"0!po=E3GyFC$\"&,I\"FC7$$\"0vtB6%=ayFC$\"&\"*H\"FC7$ $\"0hggg&G!)yFC$\"&lH\"FC7$$\"0vttGj0$zFC$\"&UH\"FC7$$\"0&ooo4%3)zFC$ \"&?H\"FC7$$\"0+++l=6.)FC$\"&]H\"FC7$$\"0888L'R\"3)FC$\"&SJ\"FC7$$\"0 \\\\\\4hqG)FC$\"&\"Q8FC7$$\"0DFF(>/*Q)FC$\"&%Q8FC7$$\"0000&G-\"\\)FC$ \"&eM\"FC7$$\"0geeoKZe)FC$\"&+M\"FC7$$\"0777_U%y')FC$\"&GL\"FC7$$\"0vw wcWey)FC$\"&#=8FC7$$\"0TTThYK*))FC$\"&>J\"FC7$$\"0&\\\\\\uFT*)FC$\"&!3 8FC7$$\"0][[G3$*)*)FC$\"&6I\"FC7$$\"0+--7Rt.*FC$\"&nG\"FC7$$\"0bbb&*p` 3*FC$\"&tE\"FC7$$\"0DBBt\"z(=*FC$\"&:E\"FC7$$\"0\"444N@!H*FC$\"&/D\"FC 7$$\"0NOO')G#R$*FC$\"&:B\"FC7$$\"0!===UC)Q*FC$\"&T>\"FC7$$\"0DFFdfsV*F C$\"&;>\"FC7$$\"0tss#\\F'[*FC$\"&*)=\"FC7$$\"0&HHz,qS&*FC$\"&_=\"FC7$$ \"0:88VD^f*FC$\"&z<\"FC7$$\"0DBt0QBi*FC$\"&)o6FC7$$\"0NLLo]&\\'*FC$\"& P:\"FC7$$\"0XV$4Lww'*FC$\"&i7\"FC7$$\"0```$f(Rq*FC$\"&\\4\"FC7$$\"0NPP ZK#)z*FC$\"&-4\"FC7$$\"0@@@,*[#*)*FC$\"&D3\"FC7$$\"0gii-r%****FC$\"&$3 5FC7$$\"0SSSIX1,\"F0$\"%x&*FC7$$\"0OO'G/_:5F0$\"%e&*FC7$$\"0KKKb&R?5F0 $\"%7&*FC7$$\"0IIb6LG-\"F0$\"%n%*FC7$$\"0GGynq_-\"F0$\"%(R*FC7$$\"0EE, C3x-\"F0$\"%k#*FC7$$\"0CCC!e9I5F0$\"%R!*FC7$$\"0++D67G.\"F0$\"%3')FC7$ $\"0wvDUya.\"F0$\"%3zFC7$$\"0_^EtW\"Q5F0$\"%&o(FC7$$\"0FFF/63/\"F0$\"% qwFC7$$\"0yyGmVh/\"F0$\"%awFC7$$\"0IIIGw90\"F0$\"%GwFC7$$\"0///)3))p5F 0$\"%idFC7$$\"044M#4>r5F0$\"%*>&FC7$$\"099k'4]s5F0$\"%JXFC7$$\"0>>%45 \"Q2\"F0$\"%GXFC7$$\"0CCC0@^2\"F0Fhcn7$$\"0MM%Q6ux5F0$\"%?XFC7$$\"0WWW Ah.3\"F0$\"%=XFC7$$\"0kkkR,c3\"F0$\"%4XFC7$$\"0&[[o:%34\"F0$\"%yWFC7$$ \"0AAAWsL4\"F0$\"%RWFC7$$\"0gffJ.f4\"F0$\"%ZVFC7$$\"0(pp*=M%)4\"F0$\"% 0UFC7$$\"0MMM1l45\"F0$\"%IRFC7$$\"0444\"o-16F0$\"%WFFC7$$\"0%QQe&)366F 0$!$b\"FC7$$\"0999KA88\"F0$!%@KFC7$$\"0[ZsBUQ8\"F0$!%OKFC7$$\"0\"33`@O O6F0$!%*G$FC7$$\"099*o?))Q6F0$!%!R$FC7$$\"0[ZZ)>ST6F0$!%rNFC7$$\"099k \"=WY6F0$!%GWFC7$$\"0\"33[;[^6F0$!%gjFC7$$\"0!**)*[];h6F0$!%HjFC7$$\"0 **)*)\\%[3<\"F0$!%UjFC7$$\"011JXlM<\"F0$!%$Q'FC7$$\"098jX#3w6F0$!%okFC 7$$\"0@?&f%*py6F0$!%OmFC7$$\"0GFFY;8=\"F0$!%[pFC7$$\"0UT\"p/b'=\"F0$!% i#)FC7$$\"0cbbZ%y\">\"F0$!&p-\"FC7$$\"0333DhQFB\"F0$!&m=\"FC7 $$\"0[[[IVAC\"F0$!&E=\"FC7$$\"0888T[*yx7F0$!&aD\"FC7$$\"0,,,9?GG\"F0$!&`D\"FC7$$\" 0uuC3^yG\"F0$!&%e7FC7$$\"0[[[-#)GH\"F0$!&7F\"FC7$$\"0DDD\"o&HJ\"F0$!&n F\"FC7$$\"0hgg+DRL\"F0$!&UE\"FC7$$\"0?>>C\"eV8F0$!&,E\"FC7$$\"0yxxZPKN \"F0$!&BD\"FC7$$\"0poV!)4dN\"F0$!&\"[7FC7$$\"0gf48#=e8F0$!&9C\"FC7$$\" 0^]vXa1O\"F0$!&%H7FC7$$\"0UTTyEJO\"F0F`^o7$$\"0CBtVr!o8F0$!&-@\"FC7$$ \"00004;IP\"F0$!&%37FC7$$\"0\"44HS&[R\"F0$!&=:\"FC7$$\"0srreDtR\"F0$!& N7\"FC7$$\"0___9(z*R\"F0$!&<7\"FC7$$\"0LLLqoAS\"F0$!&67\"FC7$$\"0999ES ZS\"F0$!&47\"FC7$$\"0wvvP$o49F0$!&$>6FC7$$\"0PPP\\EYT\"F0$!&k6\"FC7$$ \"034fv\"o>9F0$!&&46FC7$$\"0!33=qtC9F0$!&\")3\"FC7$$\"0__-G#zH9F0$!&-. \"FC7$$\"0CCCaZ[V\"F0$!%Q**FC7$$\"0___oH^W\"F0$!%+**FC7$$\"0\"33G=Tb9F 0$!%d(*FC7$$\"0#===J'[Y\"F0$!%A()FC7$$\"0$GG3WJu9F0$!%;\")FC7$$\"0zyGz ^$z9F0$!%6\")FC7$$\"0vuu<*Q%[\"F0$!%\"4)FC7$$\"0rq?cE%*[\"F0$!%5!)FC7$ $\"0nmm%RY%\\\"F0$!%\\xFC7$$\"0kjj)HY*\\\"F0$!%)*pFC7$$\"0hgg-iW]\"F0$ !%HbFC7$$\"0edd1h%4:F0$!%AbFC7$$\"0baa5gW^\"F0$!%.bFC7$$\"0SSS_2)>:F0$ !%raFC7$$\"0EEE%\\:D:F0$!%>aFC7$$\"0>>>lGy_\"F0$!%b`FC7$$\"0777O-0`\"F 0$!%8_FC7$$\"00002wJ`\"F0$!%R\\FC7$$\"0)zzz(\\e`\"F0$!%tWFC7$$\"0]]]ko 0a\"F0$!%JGFC7$$\"0...^(GX:F0$!%%3\"FC7$$\"0cbbP1+b\"F0$!%z5FC7$$\"033 3CDZb\"F0$!%j5FC7$$\"0<<<$)p,c\"F0$!%&3\"FC7$$\"0EEEU9cc\"F0$!$\"**FC7 $$\"0!33=nLo:F0$!$3*FC7$$\"0NNN,f5d\"F0$!$E(FC7$$\"0!**)*38yt:F0$!$#RF C7$$\"0WWWg.ld\"F0$\"$^\"FC7$$\"0!)zz#pT\"e\"F0$\"%G@FC7$$\"0:::DIje\" F0$\"%xjFC7$$\"0#GG8py)e\"F0$\"%o)*FC7$$\"0]]]dV7f\"F0$\"&\")R\"FC7$$ \"0==oB+Pf\"F0$\"&`R\"FC7$$\"0'ee)*o:'f\"F0$\"&]R\"FC7$$\"0//aP=5g\"F0 $\"&@R\"FC7$$\"0AAA&)zeg\"F0$\"&1R\"FC7$$\"0SS!H8u5;F0$\"&>R\"FC7$$\"0 fee!Gg:;F0$\"&AS\"FC7$$\"0YXX5egi\"F0$\"&aa\"FC7$$\"0KKKS8lj\"F0$\"&ig \"FC7$$\"0&\\\\*>i%)[l\"F0$\"&(= ;FC7$$\"0$GG)e3vl\"F0$\"&vj\"FC7$$\"032d@%Gi;F0$\"FC7$$\"0gff?Ruu\"F0$\"&V!>FC7$$\"0nmmyBnv\"F0$\"&-!>FC7$$\"0OO O9^!yF0$\"&U m\"FC7$$\"0JJJ*yr=>F0$\"&jl\"FC7$$\"0>>>h5\"H>F0$\"&()f\"FC7$$\"0222L. &R>F0$\"&X`\"FC7$$\"0!33y$)oW>F0$\"&B`\"FC7$$\"0aaaUt)\\>F0$\"&1`\"FC7 $$\"0GGGZe]&>F0$\"&<_\"FC7$$\"0---_V-'>F0$\"&\")\\\"FC7$$\"0JJ\"3u*['> F0$\"&$R9FC7$$\"0gggH^&p>F0$\"&]L\"FC7$$\"0!**)R=0U(>F0$\"&HL\"FC7$$\" 0>>>2f)y>F0$\"&AL\"FC7$$\"0SRRIWT)>F0$\"&*G8FC7$$\"0gff`H%*)>F0$\"&SK \"FC7$$\"0qp>:s?*>F0$\"&zJ\"FC7$$\"0!)zzw9Z*>F0$\"&'38FC7$$\"0!**)RQdt *>F0$\"&()G\"FC7$$\"\"#F)$\"&!e7FC-%'COLOURG6&%$RGBG$\"*++++\"!\")F(F_ fq-%+AXESLABELSG6$Q\"x6\"Q!Fffq-%%VIEWG6$;F(Fgeq%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 " " {TEXT -1 205 "The next graph compares the two methods of interpolati on in terms of their errors. The discrete points give the errors at th e interpolation points whose horizontal location is determined by extr acting the " }{TEXT 294 1 "x" }{TEXT -1 38 " coordinates from a discre te solution." }}{PARA 0 "" 0 "" {TEXT -1 74 "The error curve for the p olynomial interpolation obtained via the option \"" }{TEXT 262 15 "out put=rkinterp" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" } {TEXT -1 107 " while the error curve for interpolation obtained by per forming Runge-Kutta steps obtained via the option \"" }{TEXT 262 13 "o utput=rkstep" }{TEXT -1 15 "\" is shown in " }{TEXT 280 7 "magenta" } {TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 578 "de := diff(y(x),x)=(8*sin(7*x)-3*y(x))/(6*x+1); \nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},x=0..1,method=rk56b,output =rkinterp):\ngn2 := desolveRK(\{de,ic\},x=0..1,method=rk56b,output=rks tep):\npts := desolveRK(\{de,ic\},x=0..1,method=rk56b,output=points): \npts2 := [seq([pts[i,1],evalf[18](gn2(pts[i,1])-g(pts[i,1]))],i=1..no ps(pts))]:\np1 := plot([pts2$3],style=point,symbol=[circle,diamond,cro ss],color=[black,coral$2]):\np2 := evalf[18](plot(['gn1'(x)-g(x),'gn2' (x)-g(x)],x=0..0.65,\n color=[blue,magenta],numpoints=100) ):\nplots[display]([p1,p2],view=[0..0.65,-5e-11..1e-11]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&*&\"\")\"\" \"-%$sinG6#,$*&\"\"(F1F,F1F1F1F1*&\"\"$F1F)F1!\"\"F1,&*&\"\"'F1F,F1F1F 1F1F:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" } }{PARA 13 "" 1 "" {GLPLOT2D 704 277 277 {PLOTDATA 2 "6)-%'CURVESG6&7F7 $$\"\"!F)F(7$$\"3-+++++++5!#>$!3m+++++IM'*!#I7$$\"3-+++dF:FK7$$\"3#******zA#GT:FT$!3 #*********f%3p\"FK7$$\"3))*****>$oIn5U&oDFT$!3\"*********4mTDFK7$$\"3%)*****>BU_*GFT$!3w********p7oHFK 7$$\"3A+++tzI*G$FT$!3<++++!o-.%FK7$$\"33+++hovcOFT$!3%*********fI\"H%F K7$$\"3'******R45L.%FT$!3')********p1ZVFK7$$\"3?+++q.0#R%FT$!3/++++qo. UFK7$$\"31+++&*z>XZFT$!3')********z!e'RFK7$$\"3U+++hs3*4&FT$!31++++!f@ l$FK7$$\"35+++aK&)eaFT$!3s********\\Y_KFK7$$\"3$******\\e\\5$eFT$!3+++ ++]$Gs#FK7$$\"3m*****R3!GGiFT$!3!********4^#3>FK7$$\"3S+++3%Qzp'FT$\"3 &)********RMWZF67$$\"3w*****p)QQkqFT$\"35++++!*y)G)F67$$\"3[+++R8\\SuF T$\"3/++++0nr6FK7$$\"3c******o]<)y(FT$\"3**********=Y.8FK7$$\"3_+++,6! )=\")FT$\"3/++++)=!\\8FK7$$\"3\\+++#)y?R%)FT$\"3)********R&R\\8FK7$$\" 3i*****z8zPv)FT$\"3.++++*p/K\"FK7$$\"3U+++#oxf1*FT$\"31++++Xbo7FK7$$\" 3w*****pH-!z$*FT$\"3%********\\mZ>\"FK7$$\"3#)******H&>ip*FT$\"3)***** ***4hb4\"FK7$$\"\"\"F)$\"3)*********[:35FK-%'COLOURG6&%$RGBGF)F)F)-%'S YMBOLG6#%'CIRCLEG-%&STYLEG6#%&POINTG-F$6&F&-Fiv6&F[w$\"*++++\"!\")$\") AR!)\\FjwF(-F]w6#%(DIAMONDGF`w-F$6&F&Ffw-F]w6#%&CROSSGF`w-F$6$7dhlF'7$ $\"3+----xv'e)!#@$\"%#o$!#<7$$\"3SSSSS:N<T*F^y7$$\"3BBB BtRk%G\"F-$!'#eA\"F^y7$$\"3%\\\\\\u&*)o_9F-$!'/SRF^y7$$\"3mmmmTRt?;F-$ !'MjbF^y7$$\"3QQQ)e#*y()y\"F-$!'=G@F^y7$$\"355555R#o&>F-$\"'eaAF^y7$$ \"3cbbb0G)f7#F-$!'B27F^y7$$\"3,,,,,<9&H#F-$!'\"Q/$F^y7$$\"3uttt[6szBF- $!'#G\"HF^y7$$\"3YYYY'f+VY#F-$!'(=2$F^y7$$\"3>>>>W+))[DF-$!'h5QF^y7$$ \"3#>>>>\\fMj#F-$!'>w]F^y7$$\"3aaaH[pjOF-$!'oR\\F^y7$$\"38888j`AJRF-$!'86oF^y7$$\"3cccccY.7SF-$!'BS!)F ^y7$$\"3++++]R%G4%F-$!'G2!*F^y7$$\"3'eeeLFYI6%F-$!'5e\"*F^y7$$\"3srrr' f[K8%F-$!'(3E*F^y7$$\"3edd2?4X`TF-$!''3J*F^y7$$\"3WVVVVKltTF-$!'F/$*F^ y7$$\"3;:::!*y09UF-$!'26\"*F^y7$$\"3(oooo`iWD%F-$!'Ls')F^y7$$\"3utttB6 3;WF-$!'N<]F^y7$$\"3hggg5(*pxXF-$!'?=>F^y7$$\"3MMMM%)e%[u%F-$!'^NYF^y7 $$\"33333e?*>\"\\F-$!'>2pF^y7$$\"3%\\\\\\\\9lb*\\F-$!'A$z'F^y7$$\"3!== ==BQ\"z]F-$!'Q>nF^y7$$\"3qooo=8ri^F-$!'@MpF^y7$$\"3cbbb0WGY_F-$!')Ge(F ^y7$$\"3SRRRRX*GT&F-$!'st(*F^y7$$\"3DBBBtY]zbF-$!(Kv5\"F^y7$$\"352222[ 6YdF-$!'gn#*F^y7$$\"3\"4444%\\s7fF-$!'.F`F^y7$$\"3?>>>WH[biF-$!'()QzF^ y7$$\"3[ZZZZ4C)f'F-$!'iB&)F^y7$$\"3NLLL$QU,!pF-$!(z!G6F^y7$$\"3?>>>>Q/ -sF-$!(`>@\"F^y7$$\"3++++v&y>P(F-$!'po))F^y7$$\"3!3333L8>a(F-$!'))3dF^ y7$$\"3ghhh'3[=r(F-$!'P!)oF^y7$$\"3VUUUUGy\")yF-$!(!oR5F^y7$$\"3lmmmm` T_!)F-$!(f[-\"F^y7$$\"3!4444*y/B#)F-$!(w,.\"F^y7$$\"3:::::/o$R)F-$!(8c :\"F^y7$$\"3SRRRRHJk&)F-$!(AVN\"F^y7$$\"3qmmmm4`Y')F-$!(*GB9F^y7$$\"3& RRRR**[(G()F-$!(tXW\"F^y7$$\"3?@@@@q'4\"))F-$!(@SS\"F^y7$$\"3][[[[]=$* ))F-$!((y*H\"F^y7$$\"30....6id!*F-$!'D$p*F^y7$$\"3eddddr0A#*F-$!'NAsF^ y7$$\"3&eee$[3Qr$*F-$!'*RH)F^y7$$\"3:999RXq?&*F-$!(Lo;\"F^y7$$\"3qn#*[ ++PR&*F-$!(U6>\"F^y7$$\"3?@r$=YN!e&*F-$!(OD?\"F^y7$$\"3vu\\=B4qw&*F-$! (CV?\"F^y7$$\"3IGG`%Qm`f*F-$!(QR?\"F^y7$$\"3SN&GsI(pK'*F-$!(TC?\"F^y7$ $\"3XUU#*H#G+n*F-$!(-%*>\"F^y7$$\"3gccJv+pW(*F-$!(*o*=\"F^y7$$\"3rqqq? >N>)*F-$!(d:=\"F^y7$$\"3#===VDZu,\"FT$!(`FQ\"F^y7$$\"3dccc;$fH0\"FT$!( A?f\"F^y7$$\"3+**)*)R+,!o5FT$!(t)=9F^y7$$\"3UTTT\"pUI3\"FT$!(&zF6F^y7$ $\"3jii7NNc!4\"FT$!'m8**F^y7$$\"3%QQQ)yV3)4\"FT$!'\"Q)*)F^y7$$\"3WWWp+ [%=5\"FT$!'![w)F^y7$$\"3000bA_g06FT$!'yV()F^y7$$\"3mllSWcO46FT$!'+N*)F ^y7$$\"3EEEEmg786FT$!'fR$*F^y7$$\"3LLLeCJiI6FT$!(/MH\"F^y7$$\"3SSS!H=? \"[6FT$!(%[h8F^y7$$\"3%RRk?roo:\"FT$!(:2N\"F^y7$$\"3[ZZATshl6FT$!(o?M \"F^y7$$\"3DC\\!e]\"**p6FT$!(%fU8F^y7$$\"3-,^QqdOu6FT$!(d$[8F^y7$$\"3y x_'\\.S(y6FT$!(]/O\"F^y7$$\"3baaa*H9J=\"FT$!(>&z8F^y7$$\"3!)zzHA+497FT $!(`4m\"F^y7$$\"30000Xd1X7FT$!(.0t\"F^y7$$\"3UUUn$Qe?E\"FT$!($=,:F^y7$ $\"3!)zzHA50z7FT$!(S')=\"F^y7$$\"3\\[)4;MZvG\"FT$!(bL2\"F^y7$$\"3=<<#4 mVgH\"FT$!(O\"G5F^y7$$\"3'eeL-)*RXI\"FT$!(GS2\"F^y7$$\"3baaa*HOIJ\"FT$ !(x)37F^y7$$\"3[[[t/o7@8FT$!(]DQ\"F^y7$$\"3UUU#*4t@H8FT$!(jR^\"F^y7$$ \"3OOO6:yIP8FT$!(.i_\"F^y7$$\"3IIII?$)RX8FT$!(i/_\"F^y7$$\"3CCC\\D))[` 8FT$!(X/^\"F^y7$$\"3===oI$z:O\"FT$!(pC]\"F^y7$$\"3777(e$)p'p8FT$!([\\] \"F^y7$$\"31111T.wx8FT$!((*[_\"F^y7$$\"3AAAs9n_69FT$!(!y'z\"F^y7$$\"3Q QQQ)3$HX9FT$!(7V\">F^y7$$\"3iii7g6Iw9FT$!(Y_[\"F^y7$$\"3(ooo=B4t]\"FT$ !(IF>\"F^y7$$\"3$GGy!HC.C:FT$!(TIU\"F^y7$$\"3zyyGEcvS:FT$!(joo\"F^y7$$ \"3vuu\\B)yub\"FT$!(l;o\"F^y7$$\"3rqqq???u:FT$!(5Tm\"F^y7$$\"3322dCM%* 3;FT$!(Mgz\"F^y7$$\"3WVVVG[oV;FT$!(')y3#F^y7$$\"3ML$3-9luk\"FT$!(#H.@F ^y7$$\"3CBB)>XX7l\"FT$!(f?6#F^y7$$\"398jvjd-b;FT$!(RN6#F^y7$$\"3/..`vg !)e;FT$!(Us5#F^y7$$\"3%GGy!*pmjm\"FT$!(..2#F^y7$$\"3jiiiAt#Rn\"FT$!(88 +#F^y7$$\"3AAAsp&[!*o\"FT$!(ocy\"F^y7$$\"3#===o\")pTq\"FT$!(iI`\"F^y7$ $\"3]]+Q(\\NBr\"FT$!(N6U\"F^y7$$\"3>>>%z<,0s\"FT$!(3;N\"F^y7$$\"3a`GA= SeCF^y7$$\"3#===Vp)[` =FT$!(\"Q%3#F^y7$$\"31111^X**p=FT$!()pDAF^y7$$\"3===VzuCy=FT$!(j_F#F^y 7$$\"3III!yS+l)=FT$!(g**H#F^y7$$\"3OO'))>(oi!*=FT$!(:5I#F^y7$$\"3UUUFT$!(#e` AF^y7$$\"3GFFx%zY\\$>FT$!(SR$=F^y7$$\"3++++Dt)o'>FT$!(&R)\\\"F^y7$$\"3 IIIb\"e>Y)>FT$!(4#R;F^y7$$\"3ggg5Q=N-?FT$!(Us&>F^y7$$\"3==VC-\\y1?FT$! (\"Q;?F^y7$$\"3vvDQmz@6?FT$!(aE/#F^y7$$\"3KL3_I5l:?FT$!(+n/#F^y7$$\"3! 44fY4%3??FT$!(?_/#F^y7$$\"311c$HA]*G?FT$!(>*Q?F^y7$$\"3@@@@^j\"y.#FT$! (@)G?F^y7$$\"3cbb!='HyX?FT$!(y,-#F^y7$$\"3!**)*)Rs&\\P0#FT$!(@m,#F^y7$ $\"3CCC*H=;<1#FT$!(DD-#F^y7$$\"3eeee$z#op?FT$!(O7/#F^y7$$\"3FFFx9gh&3# FT$!(b@7#F^y7$$\"3'ffffB\\:5#FT$!(42D#F^y7$$\"3YXXX]8c=@FT$!(a-S#F^y7$ $\"3&\\\\\\\\Ytb8#FT$!()e-DF^y7$$\"3qpp>A&zS9#FT$!(1x^#F^y7$$\"3WWWWzb e_@FT$!(C>]#F^y7$$\"3>>>pO;4h@FT$!(#>`CF^y7$$\"3%RRRRp(fp@FT$!(4EP#F^y 7$$\"3!**)*)R-(G/?#FT$!(())>>F^y7$$\"3'eee3rf7B#FT$!(yOn\"F^y7$$\"3+++ vGH6[AFT$!(?*G=F^y7$$\"3999kYh'\\E#FT$!(<>8#F^y7$$\"3@@rebFRtAFT$!(!pV AF^y7$$\"3GGG`k$>=G#FT$!(YCE#F^y7$$\"3ON&yM(fC!H#FT$!(h(eAF^y7$$\"3VUU U#es')H#FT$!(n6D#F^y7$$\"3#33eq9IXJ#FT$!(JHB#F^y7$$\"3?>>p6xQIBFT$!(SK B#F^y7$$\"3eddKw_CYBFT$!(0zF#F^y7$$\"3'fff4%G5iBFT$!(LcP#F^y7$$\"3MMMM *Ga_R#FT$!(ixm#F^y7$$\"3tsssPdSGCFT$!(tyy#F^y7$$\"3999*y`6YW#FT$!(^Sp# F^y7$$\"3cbb0Qt\"3Y#FT$!(h$*\\#F^y7$$\"3)pp>#QJ-xCFT$!(QeC#F^y7$$\"3RQ QQQ*GK\\#FT$!([k+#F^y7$$\"3sq?$Q#>r,DFT$!(]l\">F^y7$$\"3/..G4\\>5DFT$! (Pr'=F^y7$$\"3?>W+-kV9DFT$!(l2'=F^y7$$\"3ON&GZ*yn=DFT$!(.y'=F^y7$$\"3_ ^EX(Q>H_#FT$!(:())=F^y7$$\"3onnF^y7$$\"3KKK2^o7WDFT$!( @>=#F^y7$$\"3(ppp>#G4hDFT$!((>'[#F^y7$$\"3)))QwN)y.ce#FT$!(&4MDF^y7$$\"3KKK#[JtPf#FT$!(N__#F^y7$$\" 3;;m.QM%>g#FT$!(,V^#F^y7$$\"3+++DhN65EFT$!(rW]#F^y7$$\"3%QQjWo$G=EFT$! (K&*\\#F^y7$$\"3onnn2QXEEFT$!((=.DF^y7$$\"3xwwwJV()fEFT$!(l\\l#F^y7$$ \"3'eeee&[H$p#FT$!(*H%)HF^y7$$\"3vuu\\[n')4FFT$!(vL8$F^y7$$\"3kjj8T'Qk s#FT$!(%4:KF^y7$$\"3'e3'H9;eIFFT$!(o1A$F^y7$$\"333eX(eCZt#FT$!(g%>KF^y 7$$\"3IIbhgv')QFFT$!(+7@$F^y7$$\"3`__xL0,VFFT$!(;d>$F^y7$$\"3)pp%4!['H ^FFT$!(MH9$F^y7$$\"3UTTTECefFFT$!(q>1$F^y7$$\"3#44fYF5[x#FT$!(;.&GF^y7 $$\"3TSS!H7Q+z#FT$!(2%)e#F^y7$$\"3!**)*[6(fE0GFT$!(K)HBF^y7$$\"3SRRR>Q \\?GFT$!(c)R@F^y7$$\"3ml:`Fq&[#GFT$!(.t5#F^y7$$\"3#>>pcB?#HGFT$!(\")p3 #F^y7$$\"3==o!QW$eLGFT$!(w*z?F^y7$$\"3XWW%>lYz$GFT$!(6r3#F^y7$$\"3)pp> #oInYGFT$!(Mb9#F^y7$$\"3]\\\\\\%[*RbGFT$!(K:E#F^y7$$\"3baa/EF^y7$$\"3gfff\\^I!*GFT$!(7'RHF^y7$$\"3)p>#G-kD#*GFT$!(OY&HF^y7$$\" 3NM%o\\l2U*GFT$!('RiHF^y7$$\"3srYl2*eh*GFT$!(Mz'HF^y7$$\"3544Mg,6)*GFT $!(;u'HF^y7$$\"3%QQ8dm7?!HFT$!(!QmHF^y7$$\"3fee3r^\"f!HFT$!(_['HF^y7$$ \"3333$==?P\"HFT$!(u)eHF^y7$$\"3eddd#>D:#HFT$!()H[HF^y7$$\"3dcc19_8PHF T$!(3(=HF^y7$$\"3cbbbN_u_HFT$!(&z(*GF^y7$$\"3^]]+8B.')HFT$!(`K+$F^y7$$ \"3YXXX!R>$>IFT$!(q0S$F^y7$$\"3>==o!Q\\_.$FT$!(h/m$F^y7$$\"3#4444Pz60$ FT$!(/&>RF^y7$$\"3kjj8h$4r1$FT$!(P`8%F^y7$$\"3POOO^$RI3$FT$!($*pE%F^y7 $$\"3yx-4.9Y(3$FT$!(BRG%F^y7$$\"3?>p\"[X$)=4$FT$!(b7H%F^y7$$\"3hgNa1bI '4$FT$!(k&)G%F^y7$$\"3---Fevs+JFT$!(VbF%F^y7$$\"3&[[B$FT$!(?oM#F^y7$$\"3%RRR*G*e]@$FT$!(&))oAF^y7$$\"3%QQ )e<7vBKFT$!(WDK#F^y7$$\"3uttB1NWKKFT$!(WMl #F^y7$$\"3a```$3G)\\KFT$!(\")o\"HF^y7$$\"3WVV=s._eKFT$!(H>A$F^y7$$\"3M LL$3m7sE$FT$!(in`$F^y7$$\"3CBB[\\\\!fF$FT$!(dc\"QF^y7$$\"38888Qsf%G$FT $!(ck*RF^y7$$\"3s@%)\\dxd'G$FT$!(,f,%F^y7$$\"3IIb'oFe&)G$FT$!(0]-%F^y7 $$\"3*)QEB'zQ0H$FT$!(u(HSF^y7$$\"3[Z(*f:$>DH$FT$!(,!HSF^y7$$\"3lkRLa.[ 'H$FT$!(8u-%F^y7$$\"3#==oIRT/I$FT$!(Fc-%F^y7$$\"3;;m`qMO3LFT$!(#4@SF^y 7$$\"3]]]+[bG;LFT$!(/_,%F^y7$$\"3>>>%HqH@L$FT$!(\")=+%F^y7$$\"3)yyyy&Q (zM$FT$!(=P*RF^y7$$\"3++]il$RmN$FT$!(XZ*RF^y7$$\"3777Pt[IlLFT$!(z6+%F^ y7$$\"3CCu6\"QqRP$FT$!(SP,%F^y7$$\"3OOO')))ej#Q$FT$!(_E.%F^y7$$\"3gggN /p'**R$FT$!(0z3%F^y7$$\"3&[[[)>zHI?%F^y7$$\"3eddd(4N_a$FT$!(\"zuRF^y7$$\"3( oooox&ohNFT$!(`e(QF^y7$$\"3;;;;ck8yNFT$!(K6#QF^y7$$\"3\"333ezhje$FT$!( $4=QF^y7$$\"3YXXXNre%f$FT$!(TFT$!(,1J%F^y7$$\"3!**)*)*)HVYOTFT$!(hGH%F^y7$$\"3$ GGG`Xl\"pTFT$!(yyC%F^y7$$\"3wvvv!em=?%FT$!(k$4UF^y7$$\"3]\\\\uXt<=UFT$ !(_=?%F^y7$$\"3CBBt5\")[MUFT$!(Uc?%F^y7$$\"3)pp>d())z]UFT$!(M6A%F^y7$$ \"3rqqqS'4rE%FT$!(yiC%F^y7$$\"3YXX&zHYTG%FT$!(-yF%F^y7$$\"3????bH=,VFT $!(GpI%F^y7$$\"3&\\\\\\Ch>#=VFT$!(7WK%F^y7$$\"3qppppiDNVFT$!(Q>K%F^y7$ $\"3uttBO!RmO%FT$!(=*eUF^y7$$\"3yxxx-=-)R%FT$!(z;?%F^y7$$\"3'fff%[?;IW FT$!(@P>%F^y7$$\"39999%H-BY%FT$!(P4=%F^y7$$\"3MMMMW*)y(\\%FT$!(r(GTF^y 7$$\"3baaa%fvK`%FT$!(Ap/%F^y7$$\"33222A2M\\XFT$!(#o:SF^y7$$\"3gfff\\eS lXFT$!(:u*RF^y7$$\"37777x4Z\"e%FT$!(Hr*RF^y7$$\"3lkkk/h`(f%FT$!(Wo,%F^ y7$$\"3EEEw3`RIYFT$!(0i5%F^y7$$\"3)yyyG^aKm%FT$!(/S>%F^y7$$\"3onn#Rv3; n%FT$!(9D?%F^y7$$\"3[ZZ(\\*H'*zYFT$!(=>?%F^y7$$\"3GFF-OsJ)o%FT$!(*4\"> %F^y7$$\"33222x9n'p%FT$!(v'pTF^y7$$\"3omm;f*zLr%FT$!(-*)4%F^y7$$\"3FEE ET%)3IZFT$!(3I,%F^y7$$\"3)pppWhnxt%FT$!(tE)RF^y7$$\"3onnn(yYau%FT$!('3 mRF^y7$$\"3RQQ)3'f7`ZFT$!(SN'RF^y7$$\"35444M^!3w%FT$!(88'RF^y7$$\"3^]] ]![jhx%FT$!(m!fRF^y7$$\"3#>>>p#=_\"z%FT$!(/y&RF^y7$$\"3nmmmEy+d[FT$!(! elQF^y7$$\"3qppp%e,&*)[FT$!(71x$F^y7$$\"3tsssU`*>#\\FT$!(rcr$F^y7$$\"3 a```jNvc\\FT$!(z4w$F^y7$$\"3NMMM%y6:*\\FT$!(FE*QF^y7$$\"3STTT'4[o+&FT$ !([q%RF^y7$$\"3][[[3W=A]FT$!(4v(RF^y7$$\"3+--_kD&)H]FT$!(T\"zRF^y7$$\" 3bbbb?2_P]FT$!(])pRF^y7$$\"3544fw))=X]FT$!(J*[RF^y7$$\"3jiiiKq&G0&FT$! (&[;RF^y7$$\"35333`>bq]FT$!(Dk!QF^y7$$\"3b```toC)3&FT$!(/'*o$F^y7$$\"3 !**)*[OgqE4&FT$!([,n$F^y7$$\"3IEEwLV4(4&FT$!(R*eOF^y7$$\"3lii(Q1=:5&FT $!(f9l$F^y7$$\"3+**)*)RzTf5&FT$!(F,l$F^y7$$\"3qrr@a#*y9^FT$!(7zk$F^y7$ $\"3XWWW9njB^FT$!($)ok$F^y7$$\"3XVV$f,0'R^FT$!(4rk$F^y7$$\"3XUUU>p\"oubj^FT$!(W4k$F^y7$$\"3XTT\"*=;ar^FT$!(#yLOF^y7 $$\"3&44f'pd_z^FT$!(HIi$F^y7$$\"3TSSS?*4v=&FT$!(5%3OF^y7$$\"3?AAs>&4\" >_FT$!(an^$F^y7$$\"3////>\"42D&FT$!(A*3MF^y7$$\"3&[[B#\\S?f_FT$!(imQ$F ^y7$$\"3lllSz*)pn_FT$!(/,P$F^y7$$\"3]Y'*e4R>w_FT$!(w/O$F^y7$$\"3IFFxR) )o%G&FT$!(3(eLF^y7$$\"3!*)))Q,qy;I&FT$!(U0Q$F^y7$$\"3^]]]g&o'=`FT$!(pW V$F^y7$$\"3?@@@Ody_`FT$!('p$f$F^y7$$\"3#>>>>\"H!pQ&FT$!(#>xOF^y7$$\"3q nn[&FT$!( B![KF^y7$$\"3bbbIMKV)\\&FT$!(<)\\KF^y7$$\"3$HHHHi:\\^&FT$!(?)\\KF^y7$$ \"3&oo=JAeH_&FT$!(([YKF^y7$$\"3!333L#3+JbFT$!(w'RKF^y7$$\"3vuu\\BM/RbF T$!()oGKF^y7$$\"3qoooBg3ZbFT$!(&48KF^y7$$\"3gcc1C7u+qdFT$!(l*[KF^y7$$ \"3#===o@m'ydFT$!(Kc>$F^y7$$\"3bcccwbC6eFT$!(t<'GF^y7$$\"3KJJJO\\#Q%eF T$!(U+s#F^y7$$\"3SRRkvs&*feFT$!(I3s#F^y7$$\"3]ZZ(\\h*3weFT$!(#zDFF^y7$ $\"3bbbIa>A#*eFT$!(Kos#F^y7$$\"3kjjj$Ha$3fFT$!(\"*Rr#F^y7$$\"35444RYkS fFT$!(%f@EF^y7$$\"3baaa%)\\$H(fFT$!),*=X#FT7$$\"3XXX&H4pe+'FT$!)g#RG#F T7$$\"3POOO,K!)QgFT$!)I$\\B#FT7$$\"3baaa/GrtgFT$!)@\\xBFT7$$\"3tsss2Ci 3hFT$!)jgREFT7$$\"3IIIb^niChFT$!)zyPFFT7$$\"3!zyy`4J19'FT$!),?#y#FT7$$ \"3XXX?RajchFT$!)EFZFFT7$$\"3....$yRE<'FT$!)73>EFT7$$\"3?>>WD\"Q%)='FT $!)<$*3CFT7$$\"3NNN&yYOU?'FT$!)SEd@FT7$$\"3]^^E5[.?iFT$!)@Ga>FT7$$\"3o nnn_J$eB'FT$!)cm1>FT7$$\"3vttt)[4'piFT$!)po>>FT7$$\"3!)zzzCeQ.jFT$!)[K Q>FT7$$\"3vsssK')3PjFT$!)>yM=FT7$$\"3mlllS9zqjFT$!)WQU:FT7$$\"3qpp>7HJkFT$!(H$z$)FT7$$\"3III!y)*o%[kFT$!(;8<(F T7$$\"3&ooo=*fklkFT$!(6ov'FT7$$\"3SVV$f*H#G['FT$!(%)HE(FT7$$\"#l!\"#$! (alp)FT-Fiv6&F[wF(F(Fhw-F$6$7d]lF'7$F[z$!#kF^y7$F_[l$!%fuF^y7$Fi[l$!&. 'GF^y7$Fc\\l$!&Pu)F^y7$F]]l$!&wf*F^y7$Fa^l$!&)e&*F^y7$Ff^l$!&3a*F^y7$F [_l$!&?r*F^y7$$\"3___xLkv/\"F^y7$Fe_l$!'Y09F^y7$Fj_l$!'CVBF^y7$F_`l$!'T)4$F^y7$Fi`l$!'r %3$F^y7$Fcal$!'PsIF^y7$Fiel$!'g%z$F^y7$$\"3YXXX?C#\\Q$F-$!'9WUF^y7$$\" 3)zzzzplHY$F-$!'b-\\F^y7$$\"3]]]]v*35a$F-$!'Kj]F^y7$F^fl$!'c`]F^y7$$\" 333333)Q^x$F-$!'JM]F^y7$Fcfl$!'<;]F^y7$F]gl$!'5/]F^y7$F[il$!'v=]F^y7$$ \"3IIIII=FNVF-$!'\\]]F^y7$F`il$!'S7^F^y7$$\"3=<<<'oU'F-$!'vv')F^y7$$\"3SSSlY9b7lF-$!'sf')F^y7$Fa]m$!'xV')F^y7$Ff]m$! 'n!f)F^y7$F[^m$!'6w&)F^y7$$\"3gff4(>6qG(F-$!'l(f)F^y7$F`^m$!'PV')F^y7$ $\"3SSS!H&f%pX(F-$!'*\\s)F^y7$Fe^m$!'Ke))F^y7$Fj^m$!'Ap$*F^y7$F__m$!(x 'R5F^y7$Fi_m$!(HD.\"F^y7$Fc`m$!(Zf-\"F^y7$F]am$!(qS-\"F^y7$Fgam$!(B_- \"F^y7$$\"3!eddd2.a(*)F-$!(U!G5F^y7$F\\bm$!()HL5F^y7$$\"3IIIII\"R)R\"* F-$!(%)>/\"F^y7$Fabm$!(%Rb5F^y7$Ffbm$!(Su4\"F^y7$F[cm$!(.V<\"F^y7$F`cm $!(cs=\"F^y7$Fecm$!($4,7F^y7$Fjcm$!(%G/7F^y7$F_dm$!(bQ?\"F^y7$Fddm$!(- I?\"F^y7$Fidm$!([@?\"F^y7$F^em$!(Z/?\"F^y7$Fcem$!(b()>\"F^y7$Fhem$!(>4 >\"F^y7$F]fm$!(=e=\"F^y7$Fbfm$!(Qt=\"F^y7$Fgfm$!(CX>\"F^y7$Fagm$!(#)>@ \"F^y7$Fehm$!(YoC\"F^y7$Fjhm$!('[B8F^y7$F_im$!(0=\\\"FT$!(ZG_\"F^y7$Faan$!(k$\\:F^y7 $Ffan$!(T1g\"F^y7$F[bn$!(9wo\"F^y7$F`bn$!(%f'o\"F^y7$Febn$!(NAo\"F^y7$ Fjbn$!([Ln\"F^y7$F_cn$!(,bm\"F^y7$Fcdn$!(_=F^y7$F]jn$!('HV=F^y7$Fgjn$!(%GN=F^y7$Fe\\o$!(41$=F^y7$$\"3#44f' Hl(*=>FT$!(w;$=F^y7$Fj\\o$!(7r$=F^y7$$\"3kjj))fq\"4&>FT$!(p&\\=F^y7$F_ ]o$!(KG(=F^y7$Fi]o$!(*>#*>F^y7$Fg_o$!(Z//#F^y7$F[ao$!(O<.#F^y7$Feao$!( (GB?F^y7$F_bo$!('f:?F^y7$Fcco$!(HL,#F^y7$$\"3#>>p\")>8]=#FT$!(zm,#F^y7 $Fhco$!(Y]-#F^y7$$\"3)yyGm?We@#FT$!(N4/#F^y7$F]do$!(]x1#F^y7$Fgdo$!(d# )=#F^y7$F[fo$!(\"\\dAF^y7$Fefo$!(?&[AF^y7$F_go$!(B(RAF^y7$Fdgo$!(>7B#F ^y7$Figo$!(naA#F^y7$F^ho$!(n^A#F^y7$Fcho$!($*zA#F^y7$Fhho$!($oNAF^y7$F ]io$!(P1D#F^y7$F[[p$!(37K#F^y7$Fe[p$!(!*f[#F^y7$Fj[p$!(ba^#F^y7$F_\\p$ !(3;a#F^y7$Fd\\p$!(#QSDF^y7$Fi\\p$!(g\"RDF^y7$F^]p$!(?n`#F^y7$Fc]p$!(' GMDF^y7$F]^p$!(R%HDF^y7$Fg^p$!(CY_#F^y7$F\\_p$!(J\\^#F^y7$Fa_p$!(,f]#F ^y7$F[`p$!(E$*\\#F^y7$Fiap$!(7(*\\#F^y7$F^bp$!(%o/DF^y7$Fcbp$!(WY^#F^y 7$Fhbp$!(0;`#F^y7$F]cp$!(l\"eDF^y7$F[ep$!(8Yn#F^y7$Feep$!(*e=HF^y7$F_f p$!(wt&HF^y7$Fifp$!(\"GnHF^y7$F^gp$!(8g'HF^y7$Fcgp$!([Z'HF^y7$Fhgp$!(? A'HF^y7$F]hp$!(*pfHF^y7$Fbhp$!(yY&HF^y7$Fghp$!(%o\\HF^y7$F\\ip$!(h\"RH F^y7$Faip$!($4HHF^y7$F[jp$!(y3#HF^y7$Fejp$!('f;HF^y7$Fi[q$!(Mx\"HF^y7$ Fc\\q$!(ZJ#HF^y7$Fh\\q$!((*[$HF^y7$F]]q$!(Nd&HF^y7$Fg]q$!(EX-$F^y7$Fa^ q$!(/'eJF^y7$F[_q$!(?!yKF^y7$Fe_q$!(>,W$F^y7$F_`q$!(Ghl$F^y7$Fi`q$!(E% RRF^y7$Fcaq$!(v\\,%F^y7$F]bq$!(j*GSF^y7$Fbbq$!(bt-%F^y7$Fgbq$!([d-%F^y 7$F\\cq$!(UD-%F^y7$Facq$!(U$>SF^y7$Ffcq$!(qH,%F^y7$F[dq$!(Cm+%F^y7$F_e q$!(#)G*RF^y7$Fieq$!(A&zRF^y7$Fcfq$!(r)oRF^y7$Fggq$!(;.'RF^y7$$\"3)yyy .UVT\\$FT$!(qs&RF^y7$F\\hq$!(5k&RF^y7$$\"3,,,^QX?GNFT$!(<(eRF^y7$Fahq$ !(.b'RF^y7$F[iq$!(gz*RF^y7$F_jq$!(R72%F^y7$Fijq$!(37@%F^y7$Fg\\r$!(`KG %F^y7$Fa]r$!(#=qUF^y7$F[^r$!(TsD%F^y7$Fe^r$!($4LUF^y7$F__r$!(n7A%F^y7$ Fi_r$!(K>@%F^y7$$\"3544M0=^*)QFT$!($44UF^y7$F^`r$!(ay?%F^y7$$\"3;;;\" \\KO>#RFT$!(p(3UF^y7$Fc`r$!(>D@%F^y7$Fh`r$!(Y/A%F^y7$F]ar$!(5OB%F^y7$F bar$!(%R`UF^y7$Fgar$!(J9G%F^y7$Fabr$!(!\\:VF^y7$F[cr$!(?fM%F^y7$F`cr$! ([+M%F^y7$Fecr$!(*>MVF^y7$F_dr$!(d8K%F^y7$Fidr$!(K'3VF^y7$Fcer$!(vYG%F ^y7$Fgfr$!(0:E%F^y7$F[hr$!(ggB%F^y7$Fehr$!(*y,UF^y7$F_ir$!('pzTF^y7$Fi ir$!(db:%F^y7$F][s$!(t?8%F^y7$Fb[s$!([o6%F^y7$Fg[s$!(zb4%F^y7$F[]s$!(! [hSF^y7$Fe]s$!(WR+%F^y7$Fj]s$!(Ed)RF^yF^^s7$Fd^s$!(9P'RF^y7$Fi^s$!(X8' RF^y7$F^_s$!(@m&RF^y7$Fc_s$!(7>&RF^y7$$\"3IHHzE[EC[FT$!(G>%RF^y7$Fh_s$ !(s>$RF^y7$Fb`s$!(76\"RF^y7$Fg`s$!($F^y7$Ff`t$ !(r(oJF^y7$F`at$!(/-7$F^y7$Fdbt$!(Qv-$F^y7$Fibt$!(Q*pGF^y7$F^ct$!('Q?F F^y7$Fhct$!(hXr#F^y7$Fbdt$!(p(3FF^y7$F\\et$!)6v'p#FT7$Faet$!)q7*o#FT7$ Ffet$!)]xxEFT7$$\"3XXX&H+ei0'FT$!)QooEFT7$F[ft$!)^-cEFT7$$\"3ljj81w;\" 4'FT$!)^=QEFT7$F`ft$!)8-8EFT7$Fjft$!)J)z`#FT7$Fdgt$!)i].CFT7$F^ht$!)S' f<#FT7$Fhht$!)&Rt!>FT7$F]it$!)lF.>FT7$Fbit$!)VB**=FT7$F\\jt$!)0p!*=FT7 $Fajt$!)W_&)=FT7$Ffjt$!)RVx=FT7$F[[u$!)'*Gq=FT7$F`[u$!)&*4g=FT7$Fe[u$! ).\\X=FT7$Fj[u$!).jC=FT-Fiv6&F[wFhwF(Fhw-%+AXESLABELSG6%Q!6\"Figx-%%FO NTG6#%(DEFAULTG-%%VIEWG6$;F(Fj[u;$!\"&!#6$FevFfhx" 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" "Cu rve 4" "Curve 5" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Exa mple 5" }{TEXT 281 61 " .. The accuracy of an adaptive order 6-7 Runge -Kutta method " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}} {PARA 0 "" 0 "" {TEXT -1 89 "In this example we construct a continuous numerical solution to the differential equation" }}{PARA 257 "" 0 "" {TEXT -1 2 " " }{XPPEDIT 18 0 "dy/dx = 4*y*cos*x/(4+3*sin*2*y);" "6#/ *&%#dyG\"\"\"%#dxG!\"\"*,\"\"%F&%\"yGF&%$cosGF&%\"xGF&,&F*F&**\"\"$F&% $sinGF&\"\"#F&F+F&F&F(" }{TEXT -1 2 ", " }}{PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial condition " }{XPPEDIT 18 0 "y(0) = 1;" "6#/ -%\"yG6#\"\"!\"\"\"" }{TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "Maple can find an analytical solution \+ although it has an awkward form which requires that an equation be sol ved for each evaluation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 161 "de := diff(y(x),x)= 4*y(x)*cos(x)/ (4+3*sin(2*y(x)));\nic := y(0)=1;\ndsolve(\{de,ic\},y(x));\ng := unapp ly(rhs(%),x):\nplot(g(x),x=0..4*Pi,0..3.4,labels=[`x`,`y(x)`]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\" \"%\"\"\"F)F0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sinG6#,$*&\"\"#F0F)F0F0F0F0! \"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#%\"xG,$*&#\"\"\"\"\"#F+-%$e xpG6#-%'RootOfG6#,,*&\"\"%F+%#_ZGF+!\"\"*&F5F+-%$sinGF&F+F+*&\"\"$F+-% #SiG6#-F.6#F6F+F7*&F5F+-%#lnG6#F,F+F+*&FFEF+F+F+F+" }}{PARA 13 " " 1 "" {GLPLOT2D 615 199 199 {PLOTDATA 2 "6%-%'CURVESG6$7cr7$$\"\"!F)$ \"+++++5!\"*7$$\"+r66RF!#5$\"+CQh#=\"F,7$$\"+iTvIRF0$\"++(*\\w7F,7$$\" +arRA^F0$\"+]=+#Q\"F,7$$\"+IV_ikF0$\"+CJz>:F,7$$\"+.:l-yF0$\"+#ym0p\"F ,7$$\"+0n:x%)F0$\"+Nw())z\"F,7$$\"+5>m^\"*F0$\"+l=CO>F,7$$\"+5X\"*)[*F 0$\"+4\"\\S-#F,7$$\"+:r;E)*F0$\"+=X_L@F,7$$\"+s>M;5F,$\"+PDGtAF,7$$\"+ Ks1]5F,$\"+5SrLCF,7$$\"+sr><6F,$\"+m^s'o#F,7$$\"+7rK%=\"F,$\"+fH(=%GF, 7$$\"+_qX^7F,$\"+->8YHF,7$$\"+\"*pe=8F,$\"+G`!)>IF,7$$\"+Q]#3Q\"F,$\"+ r!4%oIF,7$$\"+'3jIW\"F,$\"+(f(e,JF,7$$\"+5@=u9F,$\"+*z(*H6$F,7$$\"+M6I 0:F,$\"+_4:@JF,7$$\"+e,UO:F,$\"+Rp8EJF,7$$\"+\"=Rvc\"F,$\"+)e3!GJF,7$$ \"+G6w*f\"F,$\"+O^oEJF,7$$\"+uI)>j\"F,$\"+#fG?7$F,7$$\"+?]?k;F,$\"+ki) R6$F,7$$\"+npU'p\"F,$\"+%ejC5$F,7$$\"+g3(3w\"F,$\"+$)=MoIF,7$$\"+`ZJD= F,$\"+#>ow,$F,7$$\"+?F'>*=F,$\"+UZvVHF,7$$\"+'o5'e>F,$\"+UaORGF,7$$\"+ _'e_-#F,$\"+siA%o#F,7$$\"+>m!>4#F,$\"+k0$>V#F,7$$\"+KP7D@F,$\"+Vk'QF#F ,7$$\"+W3Me@F,$\"+7m&e8#F,7$$\"+dzb\">#F,$\"+HONF?F,7$$\"+q]xCAF,$\"+. E;S>F,7$$\"+'H47H#F,$\"+o:k.=F,7$$\"+ANkdBF,$\"+/g(fp\"F,7$$\"+c]J%\\# F,$\"+W'\\4_\"F,7$$\"+*e')4j#F,$\"+_;Y!Q\"F,7$$\"+]pO^FF,$\"+)eITF\"F, 7$$\"+7turGF,$\"+G[ez6F,7$$\"+hoyUJF,$\"+:M!H***F07$$\"+D$R\\T$F,$\"+g \"*4Y&)F07$$\"+`'3sn$F,$\"+&4!3[uF07$$\"+GVP:RF,$\"+?dR$o'F07$$\"+_jd) >%F,$\"+l]&f/'F07$$\"+$)4`=VF,$\"+:6^heF07$$\"+9c[QWF,$\"+&\\,ms&F07$$ \"+m8-yXF,$\"+0<2JcF07$$\"+>rb`^\"F,7$$\"+:hpbqF,$\"+/%R$z;F,7$$\"+57(H7(F,$\"+***o\\y \"F,7$$\"++jC!>(F,$\"+nJZ<>F,7$$\"+XQ)QA(F,$\"+Ce1,?F,7$$\"+!R@vD(F,$ \"+vb6/@F,7$$\"+S*e6H(F,$\"+VFkNAF,7$$\"+&['zCtF,$\"+LIi$R#F,7$$\"+gUq dtF,$\"+iolSDF,7$$\"+S?h!R(F,$\"+[0YdEF,7$$\"+:)>NU(F,$\"+o)z\"[FF,7$$ \"+!fFkX(F,$\"++pg?GF,7$$\"+XJCAvF,$\"+mYbHHF,7$$\"+)pe!)e(F,$\"+l,t1I F,7$$\"+I'QJF,7$$\"+g%Q4\"yF,$\"+6G1DJF,7$$\"+D%y F%yF,$\"+F^#y7$F,7$$\"+!GJ\"yyF,$\"+iR4FJF,7$$\"+IT[8zF,$\"+I_NAJF,7$$ \"+&)p$)[zF,$\"+MWa8JF,7$$\"+S)*=%)zF,$\"+im`+JF,7$$\"+Xb*[0)F,$\"+$R^ 51$F,7$$\"+`7gD\")F,$\"+I<-,IF,7$$\"+vM8*=)F,$\"+aC![#HF,7$$\"++dm_#)F ,$\"+K$f$=GF,7$$\"+?z>;$)F,$\"+7+.hEF,7$$\"+W,tz$)F,$\"+M[.5CF,7$$\"+X sk8%)F,$\"+Rmj\\AF,7$$\"+]VcZ%)F,$\"+=*GT6#F,7$$\"+b9[\"[)F,$\"+S\\A3? F,7$$\"+g&)R:&)F,$\"+oNwA>F,7$$\"+qFB$e)F,$\"+-I-)y\"F,7$$\"+xp1^')F,$ \"+!Rj5o\"F,7$$\"+DF+u()F,$\"+g$4\\_\"F,7$$\"+w%Qp*))F,$\"+Et&oR\"F,7$ $\"+?(R8.*F,$\"+/=!oF\"F,7$$\"+o4ul\"*F,$\"+SXer6F,7$$\"+lJm=%*F,$\"+k Xk.5F,7$$\"+P(RIo*F,$\"+&Q,yh)F07$$\"+gh^T**F,$\"+qR'z^(F07$$\"+-<@@5! \")$\"+v=EYmF07$$\"+\"yts/\"Fc\\m$\"+lv&=1'F07$$\"+,**fg5Fc\\m$\"+gl%e &eF07$$\"+@g#R2\"Fc\\m$\"+5%Q4r&F07$$\"+%zTr3\"Fc\\m$\"+qNlEcF07$$\"+n vN+6Fc\\m$\"+5u(4g&F07$$\"+!\\,D6\"Fc\\m$\"+gi*)GcF07$$\"+8akC6Fc\\m$ \"+07J1dF07$$\"+>PcQ6Fc\\m$\"+N$)[ceF07$$\"+D?[_6Fc\\m$\"+qjKtgF07$$\" +A%zt<\"Fc\\m$\"+lz4KmF07$$\"+T_#R?\"Fc\\m$\"+:kOzuF07$$\"+xHLH7Fc\\m$ \"+ILaZ&)F07$$\"+fqjc7Fc\\m$\"+b)*******F0-%'COLOURG6&%$RGBG$\"#5!\"\" F(F(-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F($\"+iqjc7Fc\\m;F($\"#MF]a m" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" } }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 106 "We st art by constructing a discrete solution and make a numerical compariso n with the analytical solution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 386 "de := diff(y(x),x)=4*y(x)*cos(x)/(4+3*sin(2*y(x)));\nic := y( 0)=1;\npts := desolveRK(\{de,ic\},y(x),x=0..4*Pi,method=rk67,output=po ints):\ncat(`The discrete solution has `,convert(nops(pts),string),` p oints`);\np1 := plot(pts,style=line,color=grey):\np2 := plot([pts$2],s tyle=point,symbol=[diamond,cross],color=[black,coral]):\nplots[display ]([p1,p2],view=[0..4*Pi,0..3.4],labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"%\"\"\"F)F 0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sinG6#,$*&\"\"#F0F)F0F0F0F0!\"\"F0" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%EThe~discrete~solution~has~169~pointsG" }} {PARA 13 "" 1 "" {GLPLOT2D 677 275 275 {PLOTDATA 2 "6'-%'CURVESG6%7eu7 $$\"\"!F)$\"\"\"F)7$$\"3-+++++++5!#>$\"3++++\"ppf+\"!#<7$$\"3y******** ******fF/$\"3/+++d#el.\"F27$$\"3/+++PT3LC!#=$\"3++++*3v+;\"F27$$\"37++ +AmRXPF;$\"35+++^d?h7F27$$\"3u*****4/ip&[F;$\"3/+++^kKd8F27$$\"3y***** *pc<)y&F;$\"3)******f**4uW\"F27$$\"3w*****HJ%)yc'F;$\"3/+++8\"o<`\"F27 $$\"3N+++UYw@sF;$\"3(******p\"306;F27$$\"3Y*****>cvAx(F;$\"35+++,N9'o \"F27$$\"3-+++%=%HR#)F;$\"3%*******ym?es.>F27$$\"3T+++.d)fK*F;$\"3/++ +MF27$$\"3))******>ke7&*F;$\"38+++n!>4.#F27$$\"3E+++&3M`o*F;$\"3/+ ++P1c%3#F27$$\"3W*****z[J0%)*F;$\"3?+++N^\")Q@F27$$\"35+++8uJ+5F2$\"3% )*****RYYG?#F27$$\"3********>s<65F2$\"3!)*****>rW)\\AF27$$\"3#******Hj 85-\"F2$\"3#******4p))\\H#F27$$\"31+++->.J5F2$\"34+++$p'oUBF27$$\"32++ +q&Q./\"F2$\"3))*****pW;vQ#F27$$\"35+++O\"*f\\5F2$\"30+++IO_JCF27$$\"3 '******f(=Mf5F2$\"3')*****z5[hZ#F27$$\"3)******p')R+2\"F2$\"3')*****\\ L?B_#F27$$\"3%*******eY=#3\"F2$\"3!)*****>+M1d#F27$$\"3))*****pv8j4\"F 2$\"3%******H[l8i#F27$$\"32+++:v!H6\"F2$\"3;+++aX9uEF27$$\"3$******fj% 4K6F2$\"3&*******[]WFFF27$$\"33+++*G>Q:\"F2$\"35+++\"G:(zFF27$$\"3++++ -/Ry6F2$\"3%******fVc1$GF27$$\"3'******\\#y[17F2$\"39+++Z9a!)GF27$$\"3 /+++u,.R7F2$\"3*)*****p[;&HHF27$$\"33+++K0Ax7F2$\"3))*****\\01u(HF27$$ \"30+++wnyA8F2$\"32+++#*piBIF27$$\"3)******p[s(y8F2$\"39+++0a1nIF27$$ \"3-+++%*e&\\X\"F2$\"3$*******4-M1JF27$$\"3*******40?w`\"F2$\"3,+++/mE EJF27$$\"3(******z0v4i\"F2$\"32+++/n*R7$F27$$\"3,++++sS0F2$\"3=+++?QVAHF27$$\"3'******f=+X%>F2$\"3!)*** **z'=tkGF27$$\"3%******HgQd(>F2$\"3#******>VHc!GF27$$\"3(******pOm56#F2$\"36+++4^DSBF2 7$$\"3$********Qi.7#F2$\"3?+++s`+'H#F27$$\"3A+++lVwH@F2$\"3y*****zcjFD #F27$$\"39+++-orR@F2$\"3)******>\"oQ4AF27$$\"3=+++!G%p]@F2$\"3!******* \\%G[;#F27$$\"3?+++A'fL;#F2$\"39+++B$Gx6#F27$$\"31+++:4()y@F2$\"3-+++ \"3&yl?F27$$\"3/+++S9B+AF2$\"3#******\\#4)G+#F27$$\"3y*****z1l.B#F2$\" 3%******p9Dq#>F27$$\"3!******Rd!elAF2$\"3-+++\"[X=&=F27$$\"3)******4Yu 8I#F2$\"3%******Hyi!G\"F 27$$\"33+++Zo^^GF2$\"3!******pxjZ>\"F27$$\"3!*******Rt+vHF2$\"33+++O]3 16F27$$\"3$)*****HE!*e6$F2$\"3,+++5AW:5F27$$\"3!)*****R))fsF$F2$\"3'** ****>C\"oO#*F;7$$\"3;+++Y*ejY$F2$\"3^+++FS$)3$)F;7$$\"3(******H2zzr$F2 $\"3!)*****z+o=I(F;7$$\"3/+++&3Nn&RF2$\"3a+++O?AslF;7$$\"3++++%>@X>%F2 $\"3U+++Ug1`gF;7$$\"3y*****frLEV%F2$\"3T+++D^/KdF;7$$\"3m*****Hub:o%F2 $\"3V+++h(fCg&F;7$$\"31+++zGS?\\F2$\"3))*****\\06Ln&F;7$$\"3O+++yC&**= &F2$\"3c*****p0X\\)fF;7$$\"3x*****zF'\\MbF2$\"3?+++oa\"Rv'F;7$$\"3K+++ mPA&z&F2$\"3L+++85y)F;7$$\"34+++ H51+jF2$\"36+++\"f-,,\"F27$$\"37+++>&G1Y'F2$\"3&******4F;N6\"F27$$\"3' )*****p\"f>.mF2$\"3\"******H\")Gx@\"F27$$\"3&)*****zwgIs'F2$\"3$****** \\fwjJ\"F27$$\"3&)*****4rIO#oF2$\"3$******fcj!49F27$$\"3f*****>pRy!pF2 $\"33+++RD%e\\\"F27$$\"3i*****zl\"RypF2$\"3%******RnIsd\"F27$$\"3m**** *z2qw.(F2$\"3/+++)*z,a;F27$$\"3i*****fjgx3(F2$\"3$******fTEss\"F27$$\" 3B+++mldIrF2$\"3-+++$G,$)z\"F27$$\"3o*****>_&GorF2$\"3'******zNN,(=F27 $$\"3W+++2Ex1sF2$\"35+++83gc>F27$$\"3H+++JzTEsF2$\"3()*****R]Z!3?F27$$ \"3\"******4UVZC(F2$\"3/+++*R=@1#F27$$\"3U+++j]#3E(F2$\"3!*******>-j:@ F27$$\"3%)******[H%zF(F2$\"31+++!G\"4!=#F27$$\"3e*****>9/4H(F2$\"3(*** ***z\"\\_MAF27$$\"3c*****zKN4I(F2$\"3))*****HLy(zAF27$$\"3L+++$)oP6tF2 $\"3!******\\Y]!HBF27$$\"3)*******4v#3K(F2$\"3%******p>VXP#F27$$\"3A++ +:6/ItF2$\"3')*****p&)4'=CF27$$\"3(******>+$fRtF2$\"3?+++%oRHY#F27$$\" 3'******Hqh*\\tF2$\"3')*****z&He3DF27$$\"3))*****zlG;O(F2$\"3y*****4oC ib#F27$$\"3C+++j*=^P(F2$\"3z*****\\#RC1EF27$$\"3;+++0i&4R(F2$\"3?+++l! H&eEF27$$\"3i*****pD$R4uF2$\"3;+++!yy=r#F27$$\"3y*******Hj.V(F2$\"3%)* ****H%f`kFF27$$\"3=+++<@/auF2$\"3y******yU%e\"GF27$$\"3U+++u0-\"[(F2$ \"3!)*****R%>,mGF27$$\"3A+++?/:7vF2$\"3%)*****f,c_\"HF27$$\"3q*****>sO &[vF2$\"3;+++PT]jHF27$$\"33+++94r\"f(F2$\"3.+++@KI5IF27$$\"30+++()y;Ww F2$\"39+++>!4Z0$F27$$\"3$)*****f11?r(F2$\"3;+++9WC&4$F27$$\"3K+++\"eR& *z(F2$\"3'******R8\"GBJF27$$\"3;+++'4N7)yF2$\"3)******p%*Qo7$F27$$\"31 +++YRwtzF2$\"38+++F#>[5$F27$$\"3'******fx5d/)F2$\"31+++]$fs1$F27$$\"3C +++\"fY77)F2$\"3'******zJ+a+$F27$$\"3K*****pKi%*=)F2$\"3>+++k,MCHF27$$ \"3\"3++]#38D#)F2$\"3')*****fB7\"pGF27$$\"3)******RaeoD)F2$\"3z*****\\ W%))4GF27$$\"3C*****f3[PG)F2$\"3-+++ik()\\FF27$$\"3Z*****H9%H3$)F2$\"3 '******H:hYo#F27$$\"3!)******H!>FL)F2$\"3)******\\y$o1EF27$$\"3S+++b(z tM)F2$\"3#)*****>9C@b#F27$$\"3A*****f')*Ql$)F2$\"3#)******3WNwCF27$$\" 3I+++8d&\\P)F2$\"3#)******\\\"oDV#F27$$\"3O+++P&HYQ)F2$\"3#)*****f(Hg' Q#F27$$\"3#3+++Q_VR)F2$\"3,+++a4xRBF27$$\"3_+++jok.%)F2$\"35+++o)RbH#F 27$$\"3w+++bC08%)F2$\"31+++i?I_AF27$$\"3I*****H<8IU)F2$\"32+++!Q=*3AF2 7$$\"3m+++(p/SV)F2$\"35+++G4Mk@F27$$\"3W+++3IpY%)F2$\"3/+++uP?<@F27$$ \"3q+++B[Ci%)F2$\"3#******Rt)=l?F27$$\"3e+++z%3P[)F2$\"3.+++O43-?F27$$ \"3,+++`L&Q^)F2$\"33+++1QKE>F27$$\"31+++(Hl\"\\&)F2$\"33+++Vs0^=F27$$ \"3')******)yx\\e)F2$\"3++++(p$*\\y\"F27$$\"3a+++XOgC')F2$\"3)******4^ 9/s\"F27$$\"3e*****R[+)p')F2$\"3/+++4kpa;F27$$\"3g*****4!>$>s)F2$\"33+ ++D)Qme\"F27$$\"3]*****\\\\kBy)F2$\"3-+++D&ya^\"F27$$\"3A******QR__))F 2$\"3#******\\X<2W\"F27$$\"3N+++\\*yQ$*)F2$\"33+++Pa5i8F27$$\"3L*****z K$*y-*F2$\"33+++_nnz7F27$$\"3:+++P')*f8*F2$\"3'******z!Hy$>\"F27$$\"3i +++HHnf#*F2$\"3#********4x]5\"F27$$\"3p*****\\lk2S*F2$\"3)******4W(>xilF;7$$\"3)******f'Q;[5F]]n$\"37+++**)ph/'F;7$$\"3#***** *pIN=2\"F]]n$\"3f*****Rgt'HdF;7$$\"33+++#R)o'4\"F]]n$\"3z*****>^YAg&F; 7$$\"32+++UOe?6F]]n$\"3?+++#p()[n&F;7$$\"33+++#>$fZ6F]]n$\"3k*****Rj%[ *)fF;7$$\"31+++%o**==\"F]]n$\"3g******RhndnF;7$$\"3'******4/Oz?\"F]]n$ \"3<+++(zO3j(F;7$$\"32+++=DEM7F]]n$\"3Y+++h')[&y)F;7$$\"3++++hqjc7F]]n F*-%'COLOURG6&%$RGBG$\")=THv!\")Fd`nFd`n-%&STYLEG6#%%LINEG-F$6&F&-Fa`n 6&Fc`nF)F)F)-%'SYMBOLG6#%(DIAMONDG-Fh`n6#%&POINTG-F$6&F&-Fa`n6&Fc`n$\" *++++\"Ff`n$\")AR!)\\Ff`nF(-F`an6#%&CROSSGFcan-%+AXESLABELSG6%%\"xG%%y (x)G-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F($\"0#fVhqjc7!#8;F($\"#M!\"\"" 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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continuous solution can be constructed over the interva l from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 " to " } {XPPEDIT 18 0 "x = 4;" "6#/%\"xG\"\"%" }{TEXT -1 21 " using the proced ure " }{TEXT 0 9 "desolveRK" }{TEXT -1 20 " with the options ''" } {TEXT 262 11 "method=rk67" }{TEXT -1 9 "'' and ''" }{TEXT 262 15 "outp ut=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 261 "de := diff(y(x),x)=4*y(x)*c os(x)/(4+3*sin(2*y(x)));\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},y( x),x=0..4*Pi,method=rk67,output=rkinterp);\nplot('gn1'(x),x=0..4*Pi,0. .3.4,labels=[`x`,`y(x)`],\n color=COLOR(RGB,0,.7,.5),thi ckness=2,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#d eG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"%\"\"\"F)F0-%$cosGF+F0,&F/F0*&\"\" $F0-%$sinG6#,$*&\"\"#F0F)F0F0F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 736 244 244 {PLOTDATA 2 "6'-%'CURVESG6#7cr7$$\"\"!F)$\"\"\"F)7$$\"+r66RF!# 5$\"+CQh#=\"!\"*7$$\"+iTvIRF/$\"+*p*\\w7F27$$\"+arRA^F/$\"+^=+#Q\"F27$ $\"+IV_ikF/$\"+DJz>:F27$$\"+.:l-yF/$\"+\"ym0p\"F27$$\"+0n:x%)F/$\"+Mw( ))z\"F27$$\"+5>m^\"*F/$\"+m=CO>F27$$\"+5X\"*)[*F/$\"+4\"\\S-#F27$$\"+: r;E)*F/$\"+M;5F2$\"+PDGtAF27$$\"+Ks1]5F2$\"+3SrLCF27$$ \"+sr><6F2$\"+m^s'o#F27$$\"+7rK%=\"F2$\"+eH(=%GF27$$\"+_qX^7F2$\"+->8Y HF27$$\"+\"*pe=8F2$\"+F`!)>IF27$$\"+Q]#3Q\"F2$\"+s!4%oIF27$$\"+'3jIW\" F2$\"+(f(e,JF27$$\"+5@=u9F2$\"+)z(*H6$F27$$\"+M6I0:F2$\"+_4:@JF27$$\"+ e,UO:F2$\"+Pp8EJF27$$\"+\"=Rvc\"F2$\"+!f3!GJF27$$\"+G6w*f\"F2$\"+N^oEJ F27$$\"+uI)>j\"F2$\"+$fG?7$F27$$\"+?]?k;F2$\"+ki)R6$F27$$\"+npU'p\"F2$ \"+&ejC5$F27$$\"+g3(3w\"F2$\"+$)=MoIF27$$\"+`ZJD=F2$\"+\">ow,$F27$$\"+ ?F'>*=F2$\"+UZvVHF27$$\"+'o5'e>F2$\"+UaORGF27$$\"+_'e_-#F2$\"+riA%o#F2 7$$\"+>m!>4#F2$\"+j0$>V#F27$$\"+KP7D@F2$\"+Wk'QF#F27$$\"+W3Me@F2$\"+7m &e8#F27$$\"+dzb\">#F2$\"+HONF?F27$$\"+q]xCAF2$\"+.E;S>F27$$\"+'H47H#F2 $\"+o:k.=F27$$\"+ANkdBF2$\"+/g(fp\"F27$$\"+c]J%\\#F2$\"+V'\\4_\"F27$$ \"+*e')4j#F2$\"+^;Y!Q\"F27$$\"+]pO^FF2$\"+)eITF\"F27$$\"+7turGF2$\"+G[ ez6F27$$\"+hoyUJF2$\"+;M!H***F/7$$\"+D$R\\T$F2$\"+j\"*4Y&)F/7$$\"+`'3s n$F2$\"+'4!3[uF/7$$\"+GVP:RF2$\"+?dR$o'F/7$$\"+_jd)>%F2$\"+j]&f/'F/7$$ \"+$)4`=VF2$\"+96^heF/7$$\"+9c[QWF2$\"+%\\,ms&F/7$$\"+m8-yXF2$\"+1<2Jc F/7$$\"+>rb`^\"F2 7$$\"+:hpbqF2$\"+.%R$z;F27$$\"+57(H7(F2$\"+)**o\\y\"F27$$\"++jC!>(F2$ \"+nJZ<>F27$$\"+XQ)QA(F2$\"+Be1,?F27$$\"+!R@vD(F2$\"+ub6/@F27$$\"+S*e6 H(F2$\"+VFkNAF27$$\"+&['zCtF2$\"+JIi$R#F27$$\"+gUqdtF2$\"+golSDF27$$\" +S?h!R(F2$\"+Z0YdEF27$$\"+:)>NU(F2$\"+n)z\"[FF27$$\"+!fFkX(F2$\"+**og? GF27$$\"+XJCAvF2$\"+mYbHHF27$$\"+)pe!)e(F2$\"+m,t1IF27$$\"+I'QJF27$$\"+g%Q4\"yF2$\"+5G1DJF27$$\"+D%yF%yF2$\"+D^#y7$F27$ $\"+!GJ\"yyF2$\"+gR4FJF27$$\"+IT[8zF2$\"+H_NAJF27$$\"+&)p$)[zF2$\"+MWa 8JF27$$\"+S)*=%)zF2$\"+km`+JF27$$\"+Xb*[0)F2$\"+\"R^51$F27$$\"+`7gD\") F2$\"+I<-,IF27$$\"+vM8*=)F2$\"+aC![#HF27$$\"++dm_#)F2$\"+J$f$=GF27$$\" +?z>;$)F2$\"+5+.hEF27$$\"+W,tz$)F2$\"+L[.5CF27$$\"+Xsk8%)F2$\"+Pmj\\AF 27$$\"+]VcZ%)F2$\"+<*GT6#F27$$\"+b9[\"[)F2$\"+S\\A3?F27$$\"+g&)R:&)F2$ \"+oNwA>F27$$\"+qFB$e)F2$\"+,I-)y\"F27$$\"+xp1^')F2$\"+*Qj5o\"F27$$\"+ DF+u()F2$\"+h$4\\_\"F27$$\"+w%Qp*))F2$\"+Et&oR\"F27$$\"+?(R8.*F2$\"+/= !oF\"F27$$\"+o4ul\"*F2$\"+SXer6F27$$\"+lJm=%*F2$\"+kXk.5F27$$\"+P(RIo* F2$\"+'Q,yh)F/7$$\"+gh^T**F2$\"+pR'z^(F/7$$\"+-<@@5!\")$\"+t=EYmF/7$$ \"+\"yts/\"Fc\\m$\"+kv&=1'F/7$$\"+,**fg5Fc\\m$\"+il%e&eF/7$$\"+@g#R2\" Fc\\m$\"+7%Q4r&F/7$$\"+%zTr3\"Fc\\m$\"+rNlEcF/7$$\"+nvN+6Fc\\m$\"+4u(4 g&F/7$$\"+!\\,D6\"Fc\\m$\"+di*)GcF/7$$\"+8akC6Fc\\m$\"+27J1dF/7$$\"+>P cQ6Fc\\m$\"+P$)[ceF/7$$\"+D?[_6Fc\\m$\"+pjKtgF/7$$\"+A%zt<\"Fc\\m$\"+j z4KmF/7$$\"+T_#R?\"Fc\\m$\"+7kOzuF/7$$\"+xHLH7Fc\\m$\"+JLaZ&)F/7$$\"+f qjc7Fc\\m$\"+])*******F/-%&COLORG6&%$RGBGF($\"\"(!\"\"$\"\"&F]am-%*THI CKNESSG6#\"\"#-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F($\"+iqjc7Fc\\m; F($\"#MF]am" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 " Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 203 "The first error graph is plotted using standard 10 digit arithmet ic for the evaluation of the procedure which gives the numerical solut ion.\nThe error is greatest where the derivative is changing rapidly. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "plot('gn1'(x)-g(x),x=0..4*Pi,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7\\dn7$$\"\"!F)F(7$$ \"+'eb&p8!#5F(7$$\"+r66RFF-F(7$$\"+e))e8GF-F(7$$\"+Wl1))GF-F(7$$\"+JUa iHF-F(7$$\"+=>-PIF-$\"\"\"!\"*7$$\"+0'*\\6JF-F(7$$\"+#Hxf=$F-F(7$$\"+z \\XgKF-F(7$$\"+mE$\\L$F-F(7$$\"+S!))Q[$F-F(7$$\"+9M%Gj$F-F(7$$\"+,6K2P F-F(7$$\"+)y)z\"y$F-F=7$$\"+vkFcQF-$!\"\"F?7$$\"+iTvIRF-Fen7$$\"+\\=B0 SF-Fen7$$\"+O&4(zSF-F(7$$\"+Bs=aTF-F(7$$\"+5\\mGUF-Fen7$$\"+(fUJI%F-F( 7$$\"+%G?wP%F-F(7$$\"+rz4_WF-F(7$$\"+ecdEXF-F(7$$\"+K5`vYF-F(7$$\"+1k[ C[F-F(7$$\"+$4k*)*[F-Fen7$$\"+!yTM(\\F-F(7$$\"+l%>z/&F-F(7$$\"+arRA^F- F=7$$\"++^:1_F-Fen7$$\"+]I\"**G&F-Fen7$$\"++5nt`F-Fen7$$\"+X*GuX&F-F(7 $$\"+!*o=TbF-F(7$$\"+S[%\\i&F-Fen7$$\"+!z-(3dF-F=7$$\"+S2Y#z&F-F(7$$\" +!p=i(eF-Fen7$$\"+Sm(*ffF-Fen7$$\"+!fMP/'F-Fen7$$\"+ND\\FhF-F(7$$\"+![ ]7@'F-F(7$$\"+I%3]H'F-F=7$$\"+!Qm(yjF-Fen7$$\"+IV_ikF-F=7$$\"+!G#GYlF- F(7$$\"+D-/ImF-Fen7$$\"+q\")z8nF-Fen7$$\"+?hb(z'F-F(7$$\"+??2lpF-F(7$$ \"+:zeKrF-F(7$$\"+geM;sF-Fen7$$\"+5Q5+tF-F=7$$\"+g<'QQ(F-F=7$$\"+5(>wY (F-Fen7$$\"+gwP^vF-F(7$$\"+0c8NwF-F=7$$\"+bN*)=xF-F=7$$\"+.:l-yF-Fen7$ $\"+bY'p)yF-F(7$$\"+0yFrzF-F(7$$\"+b4fb!)F-F(7$$\"+0T!*R\")F-F(7$$\"+b s@C#)F-F=7$$\"+0/`3$)F-Fen7$$\"+bN%GR)F-Fen7$$\"+0n:x%)F-Fen7$$\"+g)p9 c)F-F=7$$\"+5IyX')F-Fen7$$\"+gh4I()F-F(7$$\"+5$4W\"))F-F(7$$\"+gCs)*)) F-F(7$$\"+5c.$)*)F-F=7$$\"+g([t1*F-Fen7$$\"+5>m^\"*F-F=7$$\"+g](fB*F-F =7$$\"+5#)G?$*F-$!\"#F?7$$\"+g8g/%*F-$\"\"#F?7$$\"+5X\"*)[*F-F(7$$\"+g wAt&*F-F(7$$\"+53ad'*F-F=7$$\"+gR&=u*F-Fdz7$$\"+:r;E)*F-Fen7$$\"+q-[5* *F-Fen7$$\"+?Mz%***F-F(7$$\"+d1\"z+\"F?F(7$$\"+s>M;5F?F(7$$\"+(GtZ-\"F ?F(7$$\"+-Y?L5F?Fen7$$\"+<6F?F(7$$\"+9%)eD6F?F(7$$\"+d'zR8 \"F?F=7$$\"++4PU6F?F(7$$\"+U@w]6F?F=7$$\"+%Q`\"f6F?F=7$$\"+FYan6F?F=7$ $\"+qe$f<\"F?Fdz7$$\"+7rK%=\"F?Fen7$$\"+(f46?\"F?Fen7$$\"+#3#*y@\"F?Fe n7$$\"+CLGE7F?F=7$$\"+nXnM7F?F=7$$\"+5e1V7F?Fdz7$$\"+_qX^7F?F(7$$\"+%H [)f7F?Fdz7$$\"+P&R#o7F?Fdz7$$\"+!yImF\"F?F(7$$\"+A?-&G\"F?Fen7$$\"+1X! =I\"F?Fen7$$\"+\"*pe=8F?Fen7$$\"+YnOE8F?F(7$$\"+-l9M8F?Fen7$$\"+ei#>M \"F?F(7$$\"+9gq\\8F?F=7$$\"+qd[d8F?F=7$$\"+EbEl8F?F(7$$\"+#GXIP\"F?Fdz 7$$\"+Q]#3Q\"F?F=7$$\"+%z/')Q\"F?F(7$$\"+]XQ'R\"F?Fdz7$$\"+1V;/9F?F(7$ $\"+iS%>T\"F?F(7$$\"+uN]F9F?F(7$$\"+'3jIW\"F?F(7$$\"+UG%3X\"F?F=7$$\"+ )fA'e9F?Fiz7$$\"+aBSm9F?F(7$$\"+5@=u9F?Fen7$$\"+m='>[\"F?Fen7$$\"+A;u* [\"F?F(7$$\"+y8_(\\\"F?F=7$$\"+M6I0:F?F(7$$\"+!*338:F?F(7$$\"+Y1'3_\"F ?F=7$$\"+-/kG:F?Fen7$$\"+e,UO:F?Fdz7$$\"+9**>W:F?F=7$$\"+q'z>b\"F?F(7$ $\"+E%f(f:F?F(7$$\"+\"=Rvc\"F?Fiz7$$\"+oYfv:F?Fen7$$\"+a,l$e\"F?F(7$$ \"+Tcq\"f\"F?Fen7$$\"+G6w*f\"F?Fen7$$\"+9m\"yg\"F?F(7$$\"+,@(eh\"F?F(7 $$\"+)eFRi\"F?Fdz7$$\"+uI)>j\"F?F=7$$\"+g&Q+k\"F?Fdz7$$\"+ZS4[;F?F(7$$ \"+M&\\hl\"F?Fen7$$\"+?]?k;F?F(7$$\"+20Es;F?F(7$$\"+%*fJ!o\"F?Fdz7$$\" +![r$)o\"F?Fen7$$\"+npU'p\"F?F=7$$\"+aC[/%=F?Fen7$$\"+SxI]=F?F=7 $$\"+O(Q'e=F?F(7$$\"+K(pp'=F?Fen7$$\"+G2Iv=F?Fen7$$\"+C*=F?F(7$$\"+;PH+>F?Fen7$$\"+7Zi3>F?Fen7$$\"+3d&p\">F?F(7$$\"+.nGD >F?Fen7$$\"+)pF?F=7$$\"+%p[>%>F?Fdz7$$\"+!pz-&>F?Fen7$$\"+'o5'e>F? F(7$$\"+#oTp'>F?F(7$$\"+yEFv>F?Fen7$$\"+uOg$)>F?F=7$$\"+pY$>*>F?Fdz7$$ \"+kcE+?F?Fen7$$\"+gmf3?F?F(7$$\"+cw#p,#F?Fen7$$\"+_'e_-#F?Fen7$$\"+[' *eL?F?Fdz7$$\"+W1#>/#F?Fen7$$\"+S;D]?F?Fen7$$\"+OEee?F?F=7$$\"+KO\"p1# F?F(7$$\"+GYCv?F?Fen7$$\"+Ccd$3#F?Fdz7$$\"+>m!>4#F?Fen7$$\"+)*3@+@F?Fe n7$$\"+w^^3@F?Fdz7$$\"+a%>o6#F?Fdz7$$\"+KP7D@F?F=7$$\"+5!GM8#F?Fen7$$ \"+)GK<9#F?F(7$$\"+ml.]@F?Fen7$$\"+W3Me@F?F(7$$\"+dzb\">#F?F(7$$\"+q]x CAF?F(7$$\"+'H47H#F?F(7$$\"+ANkdBF?F(7$$\"+kusuBF?F(7$$\"+19\"=R#F?F(7 $$\"+xLN+CF?F(7$$\"+[`*)3CF?F(7$$\"+=tVjt#F?F(7$$\"+]pO^FF ?F(7$$\"+Jrb6GF?F(7$$\"+7turGF?F(7$$\"+*>2&RHF?F(7$$\"+'3ns+$F?F(7$$\" +eq?CIF?F(7$$\"+Iq9TIF?F(7$$\"+;qh\\IF?F(7$$\"+-q3eIF?F(7$$\"+))pbmIF? F(7$$\"+up-vIF?Fen7$$\"+gp\\$3$F?Fen7$$\"+Yp'>4$F?F(7$$\"+KpV+JF?Fen7$ $\"+=p!*3JF?F=7$$\"+/pPF-7$$\"+x\\#3@$F?F(7$$\"+$4j)yKF?$FfnF-7$$\"+47!pM$F?F(7$$\"+D$ R\\T$F?$\"\"$F-7$$\"+*)R2YNF?$FjzF-7$$\"+`'3sn$F?Fb^n7$$\"+GVP:RF?F(7$ $\"+\"RCU#RF?F(7$$\"+aW2LRF?Fe_n7$$\"+=X#>%RF?F(7$$\"+\"eu2&RF?Fb^n7$$ \"+WYifRF?Fi^n7$$\"+3ZZoRF?Fb^n7$$\"+rZKxRF?Fb^n7$$\"+M[<')RF?$FezF-7$ $\"+(*[-&*RF?Fb^n7$$\"+g\\(Q+%F?Fe_n7$$\"+C]s7SF?Fb^n7$$\"+(3v:-%F?Fe_ n7$$\"+]^UISF?Fb^n7$$\"+9_FRSF?F(7$$\"+x_7[SF?F(7$$\"+S`(p0%F?Fb^n7$$ \"+$fvB4%F?Fb^n7$$\"+YexFTF?Fb^n7$$\"+4fiOTF?F(7$$\"+sfZXTF?F(7$$\"+Og KaTF?Fb^n7$$\"+*4wJ;%F?Fb^n7$$\"+ih-sTF?F`_n7$$\"+Ei(3=%F?Fb^n7$$\"+*G E(*=%F?Fdan7$$\"+_jd)>%F?Fdan7$$\"+;N21UF?Fi^n7$$\"+\"oqN@%F?Fdan7$$\" +Yy1@UF?F(7$$\"+5]cGUF?Fi^n7$$\"+u@1OUF?Fe_n7$$\"+R$fNC%F?Fdan7$$\"+/l 0^UF?Fe_n7$$\"+oObeUF?Fdan7$$\"+K30mUF?Fb^n7$$\"+(*zatUF?Fdan7$$\"+i^/ \"G%F?Fdan7$$\"+EBa)G%F?Fb^n7$$\"+!\\RgH%F?Fdan7$$\"+am`.VF?$!\"$F-7$$ \"+=Q.6VF?Fi^n7$$\"+$)4`=VF?Fi^n7$$\"+)H3&yVF?Fi^n7$$\"+9c[QWF?Fi^n7$$ \"+_&pLZ%F?F(7$$\"+!\\`#3XF?Fe_n7$$\"+uW(p^%F?Fi^n7$$\"+fapDXF?F`_n7$$ \"+WkTMXF?F(7$$\"+Gu8VXF?Fi^n7$$\"+7%e=b%F?Fdan7$$\"+(Rz0c%F?Fdan7$$\" +#Q+$pXF?F(7$$\"+m8-yXF?Fb^n7$$\"+]Bu'e%F?Fegn7$$\"+NLY&f%F?Fe_n7$$\"+ ?V=/YF?Fdan7$$\"+/`!Hh%F?Fe_n7$$\"+tsMIYF?Fb^n7$$\"+U#*yZYF?Fdan7$$\"+ E-^cYF?Fdan7$$\"+67BlYF?Fe_n7$$\"+'>_Rn%F?F(7$$\"+!=tEo%F?Fegn7$$\"+lT R\"p%F?Fb^n7$$\"+]^6+ZF?Fb^n7$$\"+Mh$)3ZF?Fb^n7$$\"+>rb5[F?Fe_n7$$\"+d7\"z \"[F?Fi^n7$$\"+13jD[F?Fi^n7$$\"+b.NL[F?Fdan7$$\"+/*p5%[F?Fi^n7$$\"+`%* y[[F?Fe_n7$$\"+-!4l&[F?Fe_n7$$\"+^&GU'[F?Fi^n7$$\"++\"[>([F?Fdan7$$\"+ \\wmz[F?Fegn7$$\"+)>(Q()[F?Fb^n7$$\"+Zn5&*[F?Fb^n7$$\"+'HEG!\\F?Fb^n7$ $\"+#\\/P$\\F?F(7$$\"+)o#ek\\F?Fi^n7$$\"+!z&4+^F?Fi^n7$$\"+)))3cB&F?Fi ^n7$$\"+?RnV_F?Fi^n7$$\"+]*Q3`F?Fdan7$$\"+5#fiJ&F?F(7$$\"+SUKC`F?Fdan7$$\"+v#*QK`F ?F(7$$\"+5VXS`F?Fdan7$$\"+S$>&[`F?Fdan7$$\"+qVec`F?F(7$$\"+0%\\YO&F?F( 7$$\"+SWrs`F?F`_n7$$\"+q%z2Q&F?Fb^n7$$\"++X%))Q&F?Fb^n7$$\"+N&4pR&F?Fi ^n7$$\"+qX(\\S&F?Fe_n7$$\"++'RIT&F?Fi^n7$$\"+IY5@aF?Fi^n7$$\"+l'p\"HaF ?F(7$$\"+I(*HXaF?F(7$$\"+&zH9Y&F?F(7$$\"+I[\\paF?Fe_n7$$\"+g)fvZ&F?Fe_ n7$$\"+!*[i&[&F?Fi^n7$$\"+B**o$\\&F?Fi^n7$$\"+S\\5-bF?Fdan7$$\"+b*>0^& F?Fe_n7$$\"+q\\$*=bF?Fe_n7$$\"+&)*\\t_&F?Fb^n7$$\"++]wNbF?Fi^n7$$\"+:+ =WbF?Fe_n7$$\"+I]f_bF?Fi^n7$$\"+X+,hbF?Fdan7$$\"+0,n%f&F?Fb^n7$$\"+l,L GcF?F`_n7$$\"+&G]cp&F?F(7$$\"+4/(Hw&F?Fegn7$$\"+?!)pqdF?Fe_n7$$\"+IcUy dF?F(7$$\"+SK:'y&F?Fdan7$$\"+]3)Qz&F?Fdan7$$\"+g%3;!eF?Fdan7$$\"+qgL4e F?Fe_n7$$\"+!ojq\"eF?Fdan7$$\"+&H\"zCeF?Fe_n7$$\"+S0'F?Fi^n7$$\"+&el-1'F?Fdan 7$$\"+g3gogF?F(7$$\"+Ih$p2'F?Fdan7$$\"++9F&3'F?Fb^n7$$\"+vmg$4'F?F(7$$ \"+]>%>5'F?F(7$$\"+?sF5hF?Fegn7$$\"+lx%p7'F?Fegn7$$\"+5$=O9'F?Fegn7$$ \"+b))GghF?Fdan7$$\"++%fp<'F?F(7$$\"+qYH&='F?F(7$$\"+X*HO>'F?Fb^n7$$\" +?_'>?'F?Fb^n7$$\"+!\\+.@'F?Fi^n7$$\"+gdj=iF?Fi^n7$$\"+N5(pA'F?Fdan7$$ \"+5jINiF?Fegn7$$\"+!eTOC'F?Fe_n7$$\"+D@JgiF?F(7$$\"+mE)pF'F?Fegn7$$\" +v1k&G'F?F(7$$\"+!o)H%H'F?F(7$$\"+&ocHI'F?F(7$$\"+!p9;J'F?F(7$$\"+&ps- K'F?F(7$$\"++2$*GjF?F(7$$\"+0()ePjF?F=7$$\"+5nCYjF?Fen7$$\"+:Z!\\N'F?F (7$$\"+?FcjjF?F(7$$\"+D2AsjF?F(7$$\"+I(y3Q'F?Fen7$$\"+Nn`*Q'F?F(7$$\"+ SZ>)R'F?F(7$$\"+XF&oS'F?F=7$$\"+]2^:kF?F(7$$\"+!zuZ['F?F(7$$\"+M)QSb'F ?F(7$$\"+&QLVh'F?F(7$$\"+SziumF?F(7$$\"+:_x/nF?F(7$$\"+!\\A\\t'F?F(7$$ \"+Ih**\\nF?F(7$$\"+l(p]w'F?F(7$$\"+&e1Ex'F?F(7$$\"+0M9!y'F?F=7$$\"+D- o(y'F?F=7$$\"+Uq@&z'F?Fen7$$\"+:qN.oF?Fen7$$\"+&)p\\6oF?F=7$$\"+bpj>oF ?F(7$$\"+DpxFoF?F(7$$\"++p\"f$oF?Fen7$$\"+qo0WoF?F(7$$\"+So>_oF?F(7$$ \"+5oLgoF?Fen7$$\"+!yw%ooF?F(7$$\"+]nhwoF?F(7$$\"+?nv%)oF?F(7$$\"+&p'* G*oF?F(7$$\"+Sm<4pF?F(7$$\"+!eca#pF?F(7$$\"+]lfLpF?F(7$$\"+?ltTpF?F(7$ $\"+!\\w)\\pF?F(7$$\"+lk,epF?Fen7$$\"+Sk:mpF?F=7$$\"+5kHupF?F(7$$\"+!Q OC)pF?F(7$$\"+]jd!*pF?Fen7$$\"+?jr)*pF?Fen7$$\"+!Hco+(F?Fen7$$\"+gi*\\ ,(F?Fen7$$\"+Ii8BqF?Fdz7$$\"++iFJqF?Fen7$$\"+qhTRqF?Fen7$$\"+ShbZqF?F( 7$$\"+:hpbqF?Fen7$$\"+gOL*3(F?Fen7$$\"+57(H7(F?Fen7$$\"+&f!QJrF?F(7$$ \"+!)**yRrF?Fen7$$\"+q$*>[rF?F(7$$\"+b(3m:(F?F(7$$\"+S\"=];(F?F(7$$\"+ IvUtrF?Fdz7$$\"+:p$==(F?Fen7$$\"++jC!>(F?F(7$$\"+&ob')>(F?F(7$$\"+q]12 sF?Fdz7$$\"+gWZ:sF?Fen7$$\"+XQ)QA(F?Fen7$$\"+IKHKsF?Fen7$$\"+?EqSsF?Fd z7$$\"+0?6\\sF?Fen7$$\"+!R@vD(F?Fen7$$\"+!yIfE(F?F(7$$\"+l,MusF?Fdz7$$ \"+]&\\FG(F?Fen7$$\"+S*e6H(F?F(7$$\"+D$o&*H(F?Fdz7$$\"+5x(zI(F?F(7$$\" ++rQ;tF?$FfgnF?7$$\"+&['zCtF?Fdz7$$\"+IM-LtF?F(7$$\"+q.DTtF?F(7$$\"+:t Z\\tF?F=7$$\"+gUqdtF?Fdz7$$\"+07$fO(F?Fen7$$\"+]\"eTP(F?F\\cq7$$\"+&4& Q#Q(F?F=7$$\"+S?h!R(F?Fen7$$\"+:)>NU(F?Fen7$$\"+!fFkX(F?Fen7$$\"+NXlku F?F=7$$\"+![\")GZ(F?F(7$$\"+D%36[(F?Fen7$$\"+q`L*[(F?Fen7$$\"+:Bc(\\(F ?Fen7$$\"+g#*y0vF?Fen7$$\"++i,9vF?Fdz7$$\"+XJCAvF?F(7$$\"+!4q/`(F?F(7$ $\"+IqpQvF?F(7$$\"+vR#pa(F?Fen7$$\"+?4:bvF?Fen7$$\"+lyPjvF?Fen7$$\"+5[ grvF?Fen7$$\"+b<$)zvF?F(7$$\"+)pe!)e(F?F=7$$\"+!p=gf(F?Fdz7$$\"+!oyRg( F?F(7$$\"+q'Q>h(F?F(7$$\"+l')*)>wF?F(7$$\"+g'eyi(F?F=7$$\"+]'=ej(F?F(7 $$\"+S'yPk(F?Fen7$$\"+I'Q!)F?F(7$$\"+04QG!)F?F=7$$\"+?\">s.)F?Fen7 $$\"+It0Y!)F?Fen7$$\"+Xb*[0)F?Fdz7$$\"+gPtj!)F?F(7$$\"+q>ds!)F?F(7$$\" +&=593)F?F=7$$\"++%[-4)F?F=7$$\"+5m3*4)F?Fiz7$$\"+D[#z5)F?F(7$$\"+SIw; \")F?F(7$$\"+`7gD\")F?F(7$$\"+!yUN8)F?Fdz7$$\"+5V[T\")F?Fen7$$\"+SeU\\ \")F?F=7$$\"+ltOd\")F?Fen7$$\"+!*)3`;)F?F(7$$\"+?/Dt\")F?Fen7$$\"+]>> \"=)F?F=7$$\"+vM8*=)F?F(7$$\"++]2(>)F?F(7$$\"+Il,0#)F?F(7$$\"+g!eH@)F? Fen7$$\"+!f**3A)F?Fen7$$\"+?6%)G#)F?Fen7$$\"+XEyO#)F?F(7$$\"+qTsW#)F?F (7$$\"++dm_#)F?Fen7$$\"+Isgg#)F?F(7$$\"+b([&o#)F?Fen7$$\"+!G!\\w#)F?F= 7$$\"+5=V%G)F?F=7$$\"+SLP#H)F?Fdz7$$\"+l[J+$)F?Fdz7$$\"+!Rc#3$)F?Fen7$ $\"+?z>;$)F?Fdz7$$\"+]%RTK)F?Fdz7$$\"+v43K$)F?Fen7$$\"++D-S$)F?Fen7$$ \"+IS'zM)F?Fen7$$\"+&3ZQO)F?Fen7$$\"+W,tz$)F?Fen7$$\"+?%4#)Q)F?Fen7$$ \"+&p)o'R)F?Fen7$$\"+qz;0%)F?F(7$$\"+Xsk8%)F?Fdz7$$\"+?l7A%)F?Fdz7$$\" ++egI%)F?Fen7$$\"+v]3R%)F?Fdz7$$\"+]VcZ%)F?Fen7$$\"+DO/c%)F?Fen7$$\"++ H_k%)F?F(7$$\"+!=-IZ)F?Fdz7$$\"+b9[\"[)F?F(7$$\"+I2'**[)F?Fen7$$\"+5+W )\\)F?Fen7$$\"+&G>p])F?F(7$$\"+g&)R:&)F?F(7$$\"+Ny(Q_)F?F(7$$\"+5rNK&) F?Fen7$$\"+!RO3a)F?F=7$$\"+lcJ\\&)F?F(7$$\"+S\\zd&)F?F(7$$\"+?UFm&)F?F (7$$\"+&\\`Zd)F?F(7$$\"+qFB$e)F?Fen7$$\"+X?r\"f)F?F=7$$\"+?8>+')F?F=7$ $\"++1n3')F?F(7$$\"+v)\\rh)F?F(7$$\"+]\"Hci)F?F(7$$\"+D%3Tj)F?F(7$$\"+ +xeU')F?F(7$$\"+xp1^')F?Fen7$$\"+g/ve')F?F(7$$\"+XRVm')F?Fen7$$\"+Iu6u ')F?Fen7$$\"+:4!=o)F?F(7$$\"++W[*o)F?F(7$$\"+!)y;(p)F?Fen7$$\"+l8&[q)F ?F=7$$\"+][`7()F?F(7$$\"+?=!zs)F?F(7$$\"+!zoKu)F?F(7$$\"+vA&4v)F?F=7$$ \"+gdje()F?F(7$$\"+S#>jw)F?F(7$$\"+DF+u()F?F=7$$\"+5io\"y)F?F(7$$\"+!p p$*y)F?Fen7$$\"+vJ0(z)F?Fen7$$\"+gmt/))F?F(7$$\"+X,U7))F?F(7$$\"+IO5?) )F?Fen7$$\"+:ryF))F?Fen7$$\"++1ZN))F?Fen7$$\"+&3aJ%))F?Fen7$$\"+qv$3&) )F?Fen7$$\"+b5_e))F?F=7$$\"+SX?m))F?F(7$$\"+5:d\")))F?F(7$$\"+w%Qp*))F ?F(7$$\"+?(R8.*F?F(7$$\"+o4ul\"*F?F(7$$\"+l??#H*F?F(7$$\"+lJm=%*F?F(7$ $\"+I\\#pU*F?Fe_n7$$\"++n=N%*F?Fe_n7$$\"+q%[MW*F?Fb^n7$$\"+S-r^%*F?Feg n7$$\"+5?(*f%*F?F(7$$\"+vPBo%*F?Fb^n7$$\"+Sb\\w%*F?Fe_n7$$\"+5tv%[*F?F i^n7$$\"+!3>I\\*F?Fdan7$$\"+X3G,&*F?Fb^n7$$\"+5Ea4&*F?Fdan7$$\"+!Q/y^* F?Fb^n7$$\"+]h1E&*F?F(7$$\"+:zKM&*F?Fb^n7$$\"+!o*eU&*F?Fi^n7$$\"+]9&3b *F?F(7$$\"+&)\\Pn&*F?Fb^n7$$\"+?&)*Qe*F?F`_n7$$\"+g?U+'*F?Fb^n7$$\"+&f Xph*F?Fi^n7$$\"+gt?D'*F?Fdan7$$\"+I\"pMj*F?Fb^n7$$\"++4tT'*F?Fi^n7$$\" +lE**\\'*F?Fi^n7$$\"+IWDe'*F?Fi^n7$$\"++i^m'*F?Fe_n7$$\"+qzxu'*F?Fb^n7 $$\"+P(RIo*F?Fb^n7$$\"+!H\\`r*F?Fi^n7$$\"+X)ewu*F?Fdan7$$\"+?O\"Qw*F?F i^n7$$\"++%o*z(*F?Fb^n7$$\"+!zX!)y*F?Fb^n7$$\"+vJ7'z*F?Fb^n7$$\"+g0?/) *F?Fdan7$$\"+]zF7)*F?Fi^n7$$\"+S`N?)*F?Fb^n7$$\"+DFVG)*F?Fdan7$$\"+5,^ O)*F?Fdan7$$\"++veW)*F?Fdan7$$\"+!*[m_)*F?Fi^n7$$\"+!GU2')*F?Fi^n7$$\" +q'>)o)*F?Fdan7$$\"+bq*o()*F?Fdan7$$\"+SW(\\))*F?Fb^n7$$\"+I=0$*)*F?Fb ^n7$$\"+?#H6!**F?Fb^n7$$\"+5m?4**F?F(7$$\"++SG<**F?Fi^n7$$\"+&Qh`#**F? F(7$$\"+q(QM$**F?Fi^n7$$\"+gh^T**F?Fi^n7$$\"+SC(*\\**F?Fi^n7$$\"+:(G%e **F?F(7$$\"+!*\\)o'**F?Fdan7$$\"+q7Mv**F?Fi^n7$$\"+]vz$)**F?F(7$$\"+DQ D#***F?Fi^n7$$\"+552+5!\")F`_n7$$\"+Qm\"4+\"Fg_tFe_n7$$\"+[\"*H/5Fg_tF e_n7$$\"+f;o25Fg_tFe_n7$$\"+9HP45Fg_tF(7$$\"+qT165Fg_tFdan7$$\"+)z4>, \"Fg_tFb^n7$$\"+Dav75Fg_tFi^n7$$\"+_5g85Fg_tFb^n7$$\"+!oYW,\"Fg_tFdan7 $$\"+3BH:5Fg_tF(7$$\"+Oz8;5Fg_tFdan7$$\"+kN)p,\"Fg_tFdan7$$\"+\">Hy,\" Fg_tF(7$$\"+=[n=5Fg_tFdan7$$\"+Y/_>5Fg_tF`_n7$$\"+ugO?5Fg_tFi^n7$$\"+- <@@5Fg_tFdan7$$\"+Uh-A5Fg_tFi^n7$$\"+#eSG-\"Fg_tF(7$$\"+A]lB5Fg_tFb^n7 $$\"+i%pW-\"Fg_tFdan7$$\"+U$)4E5Fg_tF(7$$\"+AssF5Fg_tFb^n7$$\"+-hNH5Fg _tF(7$$\"+#)\\)4.\"Fg_tFdan7$$\"+iQhK5Fg_tFi^n7$$\"+UFCM5Fg_tFb^n7$$\" +i#e2/\"Fg_tF(7$$\"+\"yts/\"Fg_tFi^n7$$\"+To$R0\"Fg_tF(7$$\"+,**fg5Fg_ tFe_n7$$\"+%yK91\"Fg_tFb^n7$$\"+mcEi5Fg_tFdan7$$\"+[&)4j5Fg_tF(7$$\"+J 9$R1\"Fg_tF(7$$\"+9Vwk5Fg_tF(7$$\"+'>(fl5Fg_tFegn7$$\"+y+Vm5Fg_tFdan7$ $\"+hHEn5Fg_tF`_n7$$\"+We4o5Fg_tF(7$$\"+E(G*o5Fg_tFegn7$$\"+3;wp5Fg_tF b^n7$$\"+\"\\%fq5Fg_tFdan7$$\"+utUr5Fg_tFb^n7$$\"+c-Es5Fg_tFdan7$$\"+Q J4t5Fg_tFb^n7$$\"+@g#R2\"Fg_tFe_n7$$\"+%zTr3\"Fg_tFb^n7$$\"+nvN+6Fg_tF i^n7$$\"+il6,6Fg_tFb^n7$$\"+eb(=5\"Fg_tFe_n7$$\"+`Xj-6Fg_tFb^n7$$\"+[N R.6Fg_tFdan7$$\"+VD:/6Fg_tFb^n7$$\"+Q:\"\\5\"Fg_tFe_n7$$\"+L0n06Fg_tFb ^n7$$\"+G&Hk5\"Fg_tFe_n7$$\"+4bY46Fg_tFi^n7$$\"+!\\,D6\"Fg_tFegn7$$\"+ _Md=6Fg_tFi^n7$$\"+8akC6Fg_tFe_n7$$\"+3`^D6Fg_tFb^n7$$\"+-_QE6Fg_tFdan 7$$\"+'4bs7\"Fg_tFe_n7$$\"+!*\\7G6Fg_tFb^n7$$\"+yZ')H6Fg_tFi^n7$$\"+mX gJ6Fg_tFegn7$$\"+UT3N6Fg_tF(7$$\"+>PcQ6Fg_tFe_n7$$\"+sG_X6Fg_tFb^n7$$ \"+D?[_6Fg_tFi^n7$$\"+ujqe6Fg_tFdan7$$\"+C2$\\;\"Fg_tFegn7$$\"+o(3d;\" Fg_tFe_n7$$\"+6o[m6Fg_tFb^n7$$\"+a[En6Fg_tFdan7$$\"+)*G/o6Fg_tFi^n7$$ \"+U4#)o6Fg_tFb^n7$$\"+')*)fp6Fg_tF(7$$\"+IqPq6Fg_tFe_n7$$\"+t]:r6Fg_t Fi^n7$$\"+g6rs6Fg_tFb^n7$$\"+[sEu6Fg_tFe_n7$$\"+#HX]<\"Fg_tFegn7$$\"+N L#e<\"Fg_tFe_n7$$\"+y8gw6Fg_tFdan7$$\"+A%zt<\"Fg_tFdan7$$\"+xe,%=\"Fg_ tF(7$$\"+KBl!>\"Fg_tFb^n7$$\"+'y)G(>\"Fg_tFdan7$$\"+T_#R?\"Fg_tFegn7$$ \"+37527Fg_tFi^n7$$\"+vrF57Fg_tFb^n7$$\"+m6267Fg_tFi^n7$$\"+e^'=@\"Fg_ tFb^n7$$\"+]\"fE@\"Fg_tFi^n7$$\"+UJX87Fg_tFdan7$$\"+MrC97Fg_tFi^n7$$\" +E6/:7Fg_tFe_n7$$\"+=^$e@\"Fg_tFe_n7$$\"+4\"Hm@\"Fg_tFe_n7$$\"++JU<7Fg _tFb^n7$$\"+#4<#=7Fg_tFe_n7$$\"+%36!>7Fg_tFe_n7$$\"+w]!)>7Fg_tF(7$$\"+ o!*f?7Fg_tFe_n7$$\"+gIR@7Fg_tFdan7$$\"+_q=A7Fg_tF(7$$\"+V5)HA\"Fg_tFb^ n7$$\"+M]xB7Fg_tFi^n7$$\"+E!pXA\"Fg_tFb^n7$$\"+=IOD7Fg_tFegn7$$\"+5q:E 7Fg_tFi^n7$$\"+-5&pA\"Fg_tFegn7$$\"+%*\\uF7Fg_tFb^n7$$\"+')*Q&G7Fg_tFb ^n7$$\"+xHLH7Fg_tFb^n7$$\"+)**ehB\"Fg_tFdan7$$\"+=])HC\"Fg_tFegn7$$\"+ G!)RY7Fg_tFegn7$$\"+Q5\")\\7Fg_tFegn7$$\"+Vv^^7Fg_tFi^n7$$\"+[SA`7Fg_t Fb^n7$$\"+,t2a7Fg_tFb^n7$$\"+a0$\\D\"Fg_tFb^n7$$\"+1Qyb7Fg_tFegn7$$\"+ fqjc7Fg_t$!\"&F--%'COLOURG6&%$RGBGF(F($\"*++++\"Fg_t-%+AXESLABELSG6$Q \"x6\"Q!Fahu-%%VIEWG6$;F($\"+iqjc7Fg_t%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 136 "The solution has been co nstructed in such a way that up to a point it will produce more accura te values when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 86 "Even so there are significant errors in the neighbourhood of th e 'bumps\" in the graph." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "evalf[15](plot('gn1'(x)-g(x),x=0..4 *Pi,color=blue,numpoints=100));" }}{PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7c]n7$$\"\"!F)F(7$$\"0b%\\<&p-k'!#;$!$$ f!#97$$\"0\"*)\\.R0G8!#:$!%5JF07$$\"0+X&ya\\s9F4$!%yEF07$$\"05\"f`q$ph \"F4$!%!H#F07$$\"0:96%y:*o\"F4$!%*=#F07$$\"0?P'G'y8w\"F4$!%?AF07$$\"0D ghT*fL=F4$!%ACF07$$\"0I$o.-#e!>F4$!%'z#F07$$\"0N17*4/y>F4$!%xKF07$$\"0 SH(yPF07$$\"0#4\\s@P'3#F4$!%hQF07$$\"0X_ic#[A@F4$!%5RF07$$\" 0)R,gHfe@F4$!%QQF07$$\"0]vPN.Z>#F4$!%>OF07$$\"0g@)G\\9RBF4$!%&H\"F07$$ \"0pnQ]'e$[#F4$!#!*F07$$\"0utFL1[c#F4$!$=(F07$$\"0yz;;Egk#F4$!%$4\"F07 $$\"0#ee!*fCFFF4$!%_6F07$$\"0'=\\>eY3GF4$!%[5F07$$\"0%RIxa!4(HF4$!$*yF 07$$\"0-;^8XL8$F4$!$q&F07$$\"01AS'\\c9KF4$!$1&F07$$\"05GHz%y&H$F4$!$\\ &F07$$\"09M=i/qP$F4$!$F(F07$$\"0=S2XC#eMF4$!$s*F07$$\"0E_&3Tm?OF4$!$f( F07$$\"0Nkjw.Jy$F4$\"#5F07$$\"0K%f>%prV%F4$!$W%F07$$\"0HCG2N74&F4$!$w* F07$$\"0l+&pNr;aF4$!$z#F07$$\"0+xh1#>UdF4$!#QF07$$\"0bh#yo(Gy&F4$\"$[$ F07$$\"05Y.phN#eF4$\"$k\"F07$$\"0lIC]YU'eF4$!$r$F07$$\"0?:XJJ\\!fF4$!$ >(F07$$\"0v*fEhhXfF4$!$=)F07$$\"0I%oQ4I')fF4$!$d(F07$$\"0!)o2v&)p-'F4$ !$J'F07$$\"0N`Gcqw1'F4$!$.&F07$$\"0XAq=S!\\hF4$!$x#F07$$\"0b\">6)4/B'F 4$!#()F07$$\"05wKi%4riF4$!#gF07$$\"0lg`VzF07$$\"0G'z\")* *=+wF4$\"$+&F07$$\"0!4\"o)oCRwF4$\"$d#F07$$\"0bD=z.$ywF4$\"#fF07$$\"0? Sopgtr(F4$\"$c#F07$$\"0![&=gAXE\"zF4$\"$4& F07$$\"0gU>.f2*zF4$\"$x)F07$$\"0!>(>%G()o!)F4$\"%(3\"F07$$\"0]')puHz5) F4$\"$M*F07$$\"0:,?l')p9)F4$\"$d'F07$$\"0!e,dN/'=)F4$\"$c'F07$$\"0SI?Y +^A)F4$\"%v6F07$$\"0XZ@qbv`)F4$\"%;0*F4$\"%,qF07$$\"0?!\\%=nB4*F4 $\"%(R)F07$$\"0!y_\"*)fF8*F4$\"%[!)F07$$\"0Sl&)f_J<*F4$\"%dxF07$$\"0+. cIXN@*F4$\"%FzF07$$\"0gSE,QRD*F4$\"%T#*F07$$\"0?y'>2L%H*F4$\"%#*pF07$$ \"0&erEMsM$*F4$\"%7AF07$$\"05\"zS)3bT*F4$\"%yDF07$$\"0Im[D%H'\\*F4$\"% NEF07$$\"0?n6\"fV>)*F4$\"%[HF07$$\"0\"oucxD95F0$\"%_]F07$$\"0?eM2%G=5F 0$\"%\"=&F07$$\"0ep,R5B-\"F0$\"%z`F07$$\"0(4)oqOj-\"F0$\"%!e&F07$$\"0O #fBIOI5F0$\"%Q_F07$$\"08:ql:%Q5F0$\"%-^F07$$\"0!zV!Hok/\"F0$\"%Y[F07$$ \"0H\\rg%\\]5F0$\"%*)\\F07$$\"0ogQ#4_a5F0$\"%9[F07$$\"01s0CZ&e5F0$\"%T [F07$$\"0X$GdNdi5F0$\"%/]F07$$\"0%[*R()*fm5F0$\"%*)[F07$$\"0A12>E12\"F 0$\"%OZF07$$\"0h]F07$$\"0+HT#)y'y5F0$\"%7\\F07$$\"05?yN *)36\"F0$\"%xKF07$$\"0>6:*)*4V6F0$\"%ECF07$$\"0M!f%QKi<\"F0$\"%^DF07$$ \"0\\pw([O47F0$\"%UEF07$$\"0GR4+[w@\"F0$\"%\"f#F07$$\"014U7JfA\"F0$\"% /DF07$$\"0&)yuC9UB\"F0$\"%2DF07$$\"0k[2P(\\U7F0$\"%.EF07$$\"0V=S\\!y]7 F0$\"%cEF07$$\"0A)G-$)[r7F0$\"%XDF07$$\"0zFQ')HcF\"F0$\"%]BF07$$\"0 \"[q*4'*RL\"F0$\"%/JF07$$\"0$=eNBO#R\"F0$\"%'3&F07$$\"0MJa**okR\"F0$\" %q_F07$$\"0%3Gbcd+9F0$\"%S_F07$$\"0NI^J#o/9F0$\"%e^F07$$\"0')z\\(*)y39 F0$\"%\"4&F07$$\"0))yYH-qT\"F0$\"%()\\F07$$\"0!zP9c@D9F0$\"%3\\F07$$\" 0#p2M*GMV\"F0$\"%Z]F07$$\"0%fx`AkT9F0$\"%D\\F07$$\"0'\\Ztb&)\\9F0$\"%V JF07$$\"0)R<$*)o!e9F0$\"%;BF07$$\"0+tG@#Gm9F0$\"%dMF07$$\"0-sD`&\\u9F0 $\"%EQF07$$\"0/rA&)3F[\"F0$\"%0QF07$$\"01q>:F0$\"%cPF07$$\"08m2XvP_\"F0$ \"%'e$F07$$\"0'\\9&\\A?`\"F0$\"%\\DF07$$\"0yB&R&p-a\"F0$\"%D?F07$$\"0g -Re;&[:F0$\"%FFF07$$\"0U\"GGOwc:F0$\"%**HF07$$\"01RqrdKd\"F0$\"%=IF07$ $\"0r'z0=v*e\"F0$\"%9IF07$$\"0av,&))*zf\"F0$\"%SIF07$$\"0OaX*eC1;F0$\" %PHF07$$\"0=L*QH\\9;F0$\"%:BF07$$\"0+7L)*RFi\"F0$\"%9>F07$$\"0#3pFq)4j \"F0$\"%]MF07$$\"0kp?2M#R;F0$\"%lTF07$$\"0Y[k6\"[Z;F0$\"%(>%F07$$\"0HF 3;Gdl\"F0$\"%sTF07$$\"0WEirvOm\"F0$\"%bTF07$$\"0gD;FB;n\"F0$\"%ATF07$$ \"0wCq#3dz;F0$\"%,UF07$$\"0#RU#Q=vo\"F0$\"%!G%F07$$\"03By$fY&p\"F0$\"% eNF07$$\"0CAK\\8Mq\"F0$\"%'z\"F07$$\"0S@'[5O6< F0$\"%LPF07$$\"0))=[r._t\"F0$\"%3PF07$$\"0>lK$eA=F0$\"&18\"F07$$\"0#\\O(*=>E=F0$\"&b;\"F07$$\"0%3@o/!)H=F0$\"& zB\"F07$$\"0xc!R!4M$=F0$\"&XJ\"F07$$\"0q-*4w,P=F0$\"&VK\"F07$$\"0i[2=E 1%=F0$\"&@<\"F07$$\"0a%f^ZBW=F0$\"%#)zF07$$\"0ZSCKVy%=F0$\"%XHF07$$\"0 S'G$*=X^=F0$\"$>*F07$$\"0KKTYg]&=F0$\"%ILF07$$\"0Cy\\.p'e=F0$\"%taF07$ $\"0F0$\"%iTF07$$\"0#>\"Q >Xp!>F0$\"$S*F07$$\"0F0$\"$Q)F07$$\"0USL2Fb\">F0$\"$t)F07$$\" 0#*oG&*3T#>F0$\"$q(F07$$\"0U(RK3pK>F0$\"$j(F07$$\"0nh@x\")p$>F0$\"$#*) F07$$\"0#f#>rs7%>F0$\"$w*F07$$\"0F0$\"$@)F07$$\"0Ua9fa)\\>F0$ \"$\\#F07$$\"0#H)4ZO%e>F0$\"$s\"F07$$\"0T60N=q'>F0$\"$\"=F07$$\"0SD'oe M,?F0$\"%W8F07$$\"0SRnQtc.#F0$\"%kGF07$$\"0mM?M8-0#F0$\"%dSF07$$\"0#*H tH`Z1#F0$\"%6kF07$$\"0u`hG)Qo?F0$\"&Z!>F07$$\"0bx\\FB?2#F0$\"&bx\"F07$ $\"0O,QEec2#F0$\"&Ts\"F07$$\"0=DED$Hz?F0$\"&Dx\"F07$$\"0+\\9CGH3#F0$\" %9PF07$$\"0\"GFIKc'3#F0$\"%tOF07$$\"0i'4>#)>!4#F0$\"%iPF07$$\"0W?z?LQ4 #F0$\"%?NF07$$\"0EWn>ou4#F0$\"%RNF07$$\"02ob=.65#F0$\"%&*RF07$$\"0)=Ru \"QZ5#F0$\"%&*QF07$$\"0q:K;t$3@F0$\"%sQF07$$\"0_R?:3?6#F0$\"%`SF07$$\" 0Lj39Vc6#F0$\"%/TF07$$\"09(oH\"y#>@F0$\"%vRF07$$\"0'4^=J\"H7#F0$\"%lQF 07$$\"0A1Q2`u8#F0$\"%gKF07$$\"0[,\"HI*>:#F0$\"%^FF07$$\"03Y_Q@i:#F0$\" %*\\#F07$$\"0o!RT(\\/;#F0$\"%0CF07$$\"0GNv4yY;#F0$\"%pEF07$$\"0()zOX1* o@F0$\"%]CF07$$\"0YC)4[8t@F0$\"%]AF07$$\"01pf;jt<#F0$\"%fCF07$$\"0m8@_ \"f\"=#F0$\"%)4%F07$$\"0Ee#y)>e=#F0$\"%'3%F07$$\"0lOGILF?#F0$\"%%e'F07 $$\"0/:usY'>AF0$\"%`*)F07$$\"0kfN3vQA#F0$\"&m/\"F07$$\"0C/(RM5GAF0$\"% 1`F07$$\"0%)[ezJBB#F0$\"%I=F07$$\"0V$*>:glB#F0$\"%.SF07$$\"0i#Gko,XAF0 $\"%jVF07$$\"0#=dwNZ`AF0$\"%MXF07$$\"0,h))GI>E#F0$\"%NDF07$$\"0?]6+(Qq AF0$!$5\"F07$$\"0SRMrV)yAF0$\"$e\"F07$$\"0fGdU+tG#F0$\"$q$F07$$\"0Nr*= HC%eR#F0$!$J*F07$$\"0%*)QvZe*R#F0$!$\"*)F07$$\"0GWqeFLS#F0$!$3)F07$$ \"0j*p)RqqS#F0F^ho7$$\"0Ae!Hi\\BCF0$!$Y'F07$$\"0#oTf?#*RCF0$!$Q&F07$$ \"0Z1q^GSW#F0F^w7$$\"07'fu\\8[CF0$!$u*F07$$\"0x&=K9C_CF0$!$q*F07$$\"0U v(*)yMcCF0$!$)*)F07$$\"0sa\\!3ckCF0F\\t7$$\"0-M,stFZ#F0$!$\\'F07$$\"0K 8`j')4[#F0$!$(pF07$$\"0i#\\]&*>*[#F0$!$B)F07$$\"0F#33gI$\\#F0$!$!pF07$ $\"0#>nlCT(\\#F0$!$T%F07$$\"0chK#*=:]#F0$!$3'F07$$\"0@^3QDc]#F0$!$`)F0 7$$\"0'3WQ=t4DF0$!$*)*F07$$\"0]IgHQQ^#F0$!%.5F07$$\"0:?OvWz^#F0$!$`*F0 7$$\"0!)47@^?_#F0$!$())F07$$\"05*QETEIDF0$!$v(F07$$\"0So:/x%QDF0$!$%oF 07$$\"0)f0T@/,EF0F[[p7$$\"0cV0C2Om#F0$!$V*F07$$\"0\"*[$et))GFF0$!$C)F0 7$$\"0EahZnTz#F0$!$U(F07$$\"0T_xNa\"4GF0$!$q'F07$$\"0c]$R79CGF0$!$Y(F0 7$$\"0k\\,oM;$GF0$!$%zF07$$\"0s[47G\"RGF0$!$G(F07$$\"0E[8%[(G%GF0Fhw7$ $\"0!yuh:iYGF0Fhr7$$\"0MZ@Go.&GF0$!$.%F07$$\"0(oa-]6aGF0$!$6&F07$$\"0% fMV%3;'GF0$!$'pF07$$\"0-XT)=5pGF0$!$Q)F07$$\"05W\\K&fwGF0$!$x)F07$$\"0 =Vdw)3%)GF0$!$^)F07$$\"0LTtkv!**GF0$!$j(F07$$\"0[R*GD19HF0$!$(oF07$$\" 0NF1a&QVIF0$!$o'F07$$\"0w+U!erxJF0$!%UpF47$$\"0XHNp]YH$F0$!%)R'F47$$\" 09!y)*Ra-LF0$!%,tF47$$\"0#3./tV5LF0$!%lxF47$$\"0^\"G41L=LF0$!%dyF47$$ \"0?KX\"RAELF0$!%HxF47$$\"0dL]_5?M$F0$!%gsF47$$\"0%\\`NrzdLF0$!%HoF47$ $\"0oPlNq$*Q$F0$!%ehF47$$\"0USvdV4U$F0$!%zmF47$$\"0&[AM\")4HMF0$!%wnF4 7$$\"0G44p_sV$F0$!%PlF47$$\"0s$fZsSXMF0$!%)y&F47$$\"0:yU!=c`MF0$!%BXF4 7$$\"0ei4O;%F0$FdhoF47$$\"0tq+LfUA%F0$!%\"z\"F47$$\"0%f7O>1aUF0$!%h>F47$$\"0:\" =UX'QG%F0$!%]=F47$$\"0OO#[rm8VF0$!%_H)\\F0$!%xxF47$$\"0!*Q8F5 X,&F0$!%ZwF47$$\"0]*=q15Y]F0$!%IvF47$$\"02S!p5px]F0$!%(R(F47$$\"0I%4gD IU^F0$!%9&)F47$$\"0_[609p?&F0$!%1&*F47$$\"0?q*pJ$HA&F0$!&c7\"F47$$\"0& =z)G_*Q_F0$!&&*>\"F47$$\"0]8wSr\\D&F0$!&K;\"F47$$\"0?Nk_!*4F&F0$!&Y0\" F47$$\"0]ySwGII&F0$!%#o(F47$$\"0%=s,q1N`F0$!%m[F47$$\"0S`Z\"o]k`F0$!%. CF47$$\"0+&yFm%RR&F0$!$5)F47$$\"0!3IMlm3aF0$!$p)F47$$\"0g;3W'QBaF0$!%! y\"F47$$\"0SKtM1\"QaF0$!%BOF47$$\"0:[QDEGX&F0$!%siF47$$\"0]j=gnl[&F0$! &vH\"F47$$\"0!*y)\\*3._&F0$!&Z[\"F47$$\"0g')Qizr`&F0$!&?P\"F47$$\"0I%* yH]Sb&F0$!&Y]\"F47$$\"0+->(4#4d&F0$!&4i\"F47$$\"0o4fk\"z(e&F0$!&]l\"F4 7$$\"0:3)4.(zh&F0$!&)3;F47$$\"0l1P(*[\"[cF0$!&'[:F47$$\"0:0wjF$ycF0$!& M]\"F47$$\"0k.:I1&3dF0$!&5a\"F47$$\"0qwln%fCdF0$!&sh\"F47$$\"0v\\;0$oS dF0$!&Tq\"F47$$\"0!GsE9xcdF0$!&nt\"F47$$\"0&ez,)fGx&F0$!&Bl\"F47$$\"0S K$*)R!4y&F0$!&:d\"F47$$\"0!*oo<[*)y&F0$!&u\\\"F47$$\"0:P1FqHz&F0$!&-[ \"F47$$\"0S0WO#*pz&F0$!&!)R\"F47$$\"0qt\"eW,,eF0$!&^^\"F47$$\"0&>%>bO] !eF0$!&:r\"F47$$\"0+:q#\\7@eF0$!&Vp#F47$$\"0-)3-L@PeF0$!&&QLF47$$\"0D* =8y!))*eF0$!&X;$F47$$\"0\\!HCBSgfF0$!&-&GF47$$\"05#[@0]xfF0$!&)\\IF47$ $\"0vt'=()f%*fF0$!&IR$F47$$\"0gps\"y9.gF0$!&u`$F47$$\"0Sle\"pp6gF0$!&$ )e$F47$$\"0?hW,Y--'F0$!&U[$F47$$\"00dI6&zGgF0$!&`<$F47$$\"0q[-J$*e/'F0 $!&$>?F47$$\"0NSu]\"*H1'F0$!&S]\"F47$$\"0+KYq*3!3'F0$!&.A%F47$$\"0kB=! z=(4'F0$!&\")='F47$$\"0bJ:.6k:'F0$!&jZ&F47$$\"0VR7;Mc@'F0$!&`o%F47$$\" 0+yJ%H&GG'F0$!&u/%F47$$\"0f;^sr+N'F0$!%_@F07$$\"0gK2Q(QljF0$!%X?F07$$ \"0g[j..2Q'F0$!%`>F07$$\"0gk>p=gR'F0$!%+>F07$$\"0g!eZVL6kF0$!%:?F07$$ \"0g)Qv@**=kF0$!%Y@F07$$\"0g'>.+lEkF0$!%\"G#F07$$\"0g/5$yIMkF0$!%UBF07 $$\"0g7)ec'>W'F0$!%ZAF07$$\"0g?m[B'\\kF0$!%l>F07$$\"0gGWJ\"GdkF0$!%S;F 07$$\"0gK$G-6hkF0$!%\"[\"F07$$\"0gOA9R\\Y'F0$!%R;F07$$\"0gSh0o(okF0$!% @>F07$$\"0gW+(pfskF0$!%DAF07$$\"0!3>IM(4['F0$!%8FF07$$\"0+P.*)\\$*['F0 $!%\")GF07$$\"0?$[]js(\\'F0$!%QGF07$$\"0SH1\"G51lF0$!%BFF07$$\"0!=#4tb G_'F0$!%8DF07$$\"0:97l3'RlF0$!%TBF07$$\"0Ig86&)za'F0$!%?BF07$$\"0]1:dh jb'F0$!%8CF07$$\"0q_;.QZc'F0$!%KEF07$$\"0!*)z\"\\9Jd'F0$!%%)GF07$$\"0I \"47u')*e'F0$!%^EF07$$\"0n$QK.i1mF0$!%Q=F07$$\"0Sr3!y%Qh'F0$!%0DF07$$ \"05f$p_2@mF0$!%$)HF07$$\"0!o%yt-$GmF0$!%@JF07$$\"0]Mj?Ibj'F0$!%aIF07$ $\"0!*4L9&)*\\mF0$!%6GF07$$\"0I&G!3SWm'F0$!%6EF07$$\"0+t([vmrmF0$!%PDF 07$$\"0qgs,&*)ymF0$!%\\DF07$$\"0S[d[Aho'F0$!%'p#F07$$\"05OU&*\\Lp'F0$! %hHF07$$\"0&*z%)ojpp'F0$!%'4$F07$$\"0!QsAud+nF0$!%%>$F07$$\"0lnp:\">/n F0$!%=KF07$$\"0]67*[!yq'F0$!%OJF07$$\"0?*pfB.:nF0$!%9EF07$$\"0*o=G)fAs 'F0$!%R?F07$$\"0vv=x4\")y'F0$!%/GF07$$\"0gkbrfR&oF0$!%FLF07$$\"050**o5 >'oF0$!%mJF07$$\"0gXUmh)poF0$!%EIF07$$\"0&eT^r$Q(oF0$!%+IF07$$\"05'eQE \"y(oF0$!%SIF07$$\"0Ncd7)y\")oF0$!%qJF07$$\"0gEHhjd)oF0$!%xLF07$$\"0&o 4+\"R(*)oF0$!%)f$F07$$\"05nse9P*oF0$!%@PF07$$\"0NPW2!p(*oF0$!%;OF07$$ \"0g2;cl;!pF0$!%@KF07$$\"0&yx[5k0pF0$!%4FF07$$\"05[f`;'4pF0$!%4EF07$$ \"0I=J-#f8pF0$!%!=$F07$$\"0b)G5vcQAt&pF0$!%yM F07$$\"0bJjNt_'pF0$!%bRF07$$\"00s1LCK(pF0$!%LNF07$$\"0a7]Iv6)pF0$!%bJF 07$$\"0vdcUeH,(F0$!%hNF07$$\"0+.jaTZ/(F0$!%?UF07$$\"0l$QOWr[qF0$!%IVF0 7$$\"0IkkK(o_qF0F\\bt7$$\"0&\\a;-mcqF0$!%&4%F07$$\"0gDm5L11(F0$!%!*RF0 7$$\"0D1n*fgkqF0$!%+RF07$$\"0!py'))y&oqF0$!%()QF07$$\"0gnox^D2(F0$!%hS F07$$\"0D[pmCl2(F0$!%+WF07$$\"0b4rWqW3(F0$!%xUF07$$\"0&3FFiT#4(F0$!%!R %F07$$\"0]^t6*Q'4(F0$!%oXF07$$\"0:Ku+i.5(F0$!%jWF07$$\"0!G^(*[L/rF0$!% NVF07$$\"0\\$f(y2$3rF0$!%KUF07$$\"0IG@1mA6(F0$!%kTF07$$\"0:jmLCi6(F0$! %]UF07$$\"0+)>6E=?rF0$!%tXF07$$\"0!Gt&)39CrF0$!%-\\F07$$\"0]-[Vd?8(F0$ !%hXF07$$\"0:sQ)R(*RrF0$!%eVF07$$\"0+2%eA$R9(F0$!%RUF07$$\"0!=%H`!*y9( F0$!%ZTF07$$\"0lwu!)[=:(F0$!%!4%F07$$\"0]6?32e:(F0$!%bTF07$$\"0IYlNl(f rF0$!%dWF07$$\"0:\"3JOsjrF0$!%)*\\F07$$\"0+;c!>onrF0$!%?bF07$$\"0!3:!= S;<(F0$\"$R%F07$$\"0g&oa%)fvrF0$\"%#>'F07$$\"0X?#HnbzrF0$\"%ioF07$$\"0 IbP+:N=(F0$\"%ukF07$$\"05!HyKZ(=(F0$\"%mhF07$$\"0&\\#GbJ9>(F0$\"%KgF07 $$\"0!)ft#)*Q&>(F0$\"%[rF07$$\"0g%*=5[$*>(F0$\"%k!)F07$$\"0XHkP1L?(F0$ \"%]:F07$$\"0Ik4lks?(F0$!%%e(F07$$\"05*\\DHA6sF0$!%>uF07$$\"0&R.+7=:sF 0$!%0xF07$$\"0!)oXZR\">sF0$!%uzF07$$\"0XQO-cqA(F0$!%F()F07$$\"083Fds\\ B(F0$!%m*)F07$$\"0b(*z*ydUsF0$!%y%*F07$$\"0+(GBK=]sF0$!&b1\"F07$$\"0qJ f)e)RD(F0$!&k6\"F07$$\"0Xw&[&)ydsF0$!&E8\"F07$$\"0?@7@\"fhsF0$!&#Q7F07 $$\"0!f'Q(QRlsF0$!&ie\"F07$$\"0g5l`'>psF0$!&ij\"F07$$\"0Nb\"*>**HF(F0$ !&Jo\"F07$$\"05+='=!oF(F0$!&&\\9F07$$\"0![WCXg!G(F0$!&2V\"F07$$\"0]*3( =2WG(F0$!&\\X\"F07$$\"0?M(\\)4#)G(F0$!&$=:F07$$\"0!*yB^7?H(F0$!&KX\"F0 7$$\"0lB]<:eH(F0$!&_[\"F07$$\"0]-c#e-6tF0$!&ak\"F07$$\"0S\"=wkBEtF0$!& mr\"F07$$\"0Ign7Z9M(F0$!&8j\"F07$$\"0=RtxdmN(F0$!&A[\"F07$$\"0?Q&4Sa*Q (F0$!&PF\"F07$$\"0?P$o9)yF0$!%gcF07$$\"0!=jl)=(*)yF0$!%KOF07$$\"05$47%pz*yF0$! %K?F07$$\"0vB`o%4-zF0$!%$y\"F07$$\"0Sa&e*>i!zF0$!%NF07$ $\"0bOgl'>g!)F0F[]n7$$\"0]Qw#=+w!)F0$\"%hHF07$$\"0]S#**p!=4)F0$\"%y>F0 7$$\"0]T]e4(*4)F0$\"%+GF07$$\"0XU3<7w5)F0$\"%0MF07$$\"0&HujMc6\")F0$\" %,;F07$$\"0XVmv9b6)F0$!%%[#F07$$\"0&Ra\\gY>\")F0$!%csF07$$\"0VWCM7fY<)F0$ \"&)y5F07$$\"0?Ysz+'y\")F0$\"&i/\"F07$$\"0?*esCa#=)F0$\"%j]F07$$\"0:Kz 9%['=)F0$!%3]F07$$\"05vK#eU!>)F0$!%$***F07$$\"05=')\\nV>)F0$!%!***F07$ $\"05hR<4$)>)F0$!&\"45F07$$\"05/$\\3D-#)F0$!&R-\"F07$$\"00!***>M,@)F0$ !&>0\"F07$$\"0+w1b\"F07$$\"0&)>M &4b\\#)F0$!&ZD\"F07$$\"0+$f[!oOD)F0$!&E)F0$!&]P\"F07$$\"0I7TL>gE)F0$!&rR\"F07$$\"0S&GHk8q#)F0$!& )49F07$$\"0]eW_`UF)F0$!&*G9F07$$\"0gJ'>1Py#)F0$!&'o9F07$$\"0q/[r([#G)F 0$!&!R8F07$$\"0!y(*4[g'G)F0$!&Hg\"F07$$\"0!4:0>s!H)F0$!&[t\"F07$$\"0+C .+R[H)F0$!&tr\"F07$$\"05(\\&4c*)H)F0$!&,s\"F07$$\"0?q1>tII)F0$!&T#=F07 $$\"0IVeG!>2$)F0$!&'3:F07$$\"0S;5Q28J)F0$!&R$>F07$$\"0b*=wWU:$)F0$!&7+ #F07$$\"0!e`m'eOK)F0$!&[y\"F07$$\"0+#)o&G*=L)F0$!&Nn\"F07$$\"0?Gs/F,M) F0$!&!p:F07$$\"0SuvBh$[$)F0$!&&y8F07$$\"0]ZFLyCN)F0$!%jQF07$$\"0g?zU&f c$)F0$!%EeF07$$\"0q$4BDrg$)F0$!%+^F07$$\"0&oE='H[O)F0$!&S\"=F07$$\"008 '3Q1t$)F0$!&*f?F07$$\"0Ff*)*zH\"Q)F0$!&=6#F07$$\"0gw(yfY'R)F0$!&q*>F07 $$\"0&RfeRj6%)F0$!&7&=F07$$\"0I6%Q>!oU)F0$!&'z;F07$$\"0gG#=*p>W)F0$!&c Z\"F07$$\"0DP\"3Rb\\%)F0$!&GM\"F07$$\"0!f/)*y8d%)F0$!&cF\"F07$$\"0gaz) =sk%)F0$!&e+\"F07$$\"0Djy(eIs%)F0$!%@'*F07$$\"0gxn)*))z%)F0$!%*H)F07$$\"0DEF'=o$[)F0$!&X+\"F07$$\"0g!odQZ([)F0$!% HGF07$$\"0!\\j_eE\"\\)F0$!$V&F07$$\"0D*eZy0&\\)F0$!%x7F07$$\"0gVD%)\\) )\\)F0$!%)*=F07$$\"0$z\\P=k-&)F0$!%5=F07$$\"0bD!f`_1&)F0$!$:\"F07$$\"0 ?`0))3/^)F0$!%u@F07$$\"0!33-CH9&)F0$!%i()F07$$\"0X3O#f<=&)F0$!%jiF07$$ \"0qjm'H%f_)F0$!%WZF07$$\"0+>(4+rL&)F0$!%>VF07$$\"0lY7`$fP&)F0$!%]RF07 $$\"0IuF0x9a)F0$!%YQF07$$\"0!>Iu0OX&)F0$!%GbF07$$\"0bHe4W#\\&)F0$!%s!) F07$$\"0![))Q6,d&)F0$!%RxF07$$\"05S>=yZc)F0$!%!>(F07$$\"0?hTNYef)F0$!% #*pF07$$\"0K#QEX\"pi)F0$!%>iF07$$\"0?8QV?bp)F0$!%*>&F07$$\"02W7METw)F0 $!%\"[%F07$$\"0Z(f+/O))))F0$!%LPF07$$\"0c-m*HT:!*F0$!%&>$F07$$\"0`#49A iW\"*F0$!%'o#F07$$\"0gz*R_/_\"*F0$!%GGF07$$\"0lmeEo%f\"*F0$!%qGF07$$\" 0q`F47$$\"0QY(*yE'o(*F0$!&S'>F47$$\"0?[lZJdy*F0$!&pP#F47$$\"0+]L; OG!)*F0$!&;^#F47$$\"0!=:]3%*>)*F0$!&$fCF47$$\"0g`p`Xq$)*F0$!&BN#F47$$ \"0?d0\"\\Dr)*F0$!&_:#F47$$\"0!3;%Gka!**F0$!&%G?F47$$\"0b2kgNj$**F0$!& j7#F47$$\"0Ia'Gp?n**F0$!&T5#F47$$\"0qx(*eUE)**F0$!&Kw\"F47$$\"00,4Dy!) ***F0$!&DF\"F47$$\"0W-7R^8+\"!#8$!&8G\"F47$$\"0y9t&\\*G+\"Fdgx$!&bJ\"F 47$$\"0#yDpS+45Fdgx$!&JE\"F47$$\"0'3?\"=8^,\"Fdgx$!&n<\"F47$$\"0;>qp^# G5Fdgx$!&b6\"F47$$\"0qI*Gv%[.\"Fdgx$!&I0\"F47$$\"0CU3OV9/\"Fdgx$!&K-\" F47$$\"0q[g(RWW5Fdgx$!&O.\"F47$$\"0;b7fWu/\"Fdgx$!%.**F47$$\"0ihk?X/0 \"Fdgx$!&i2\"F47$$\"02o;#eW`5Fdgx$!&C5\"F47$$\"0'Gzh)=)f5Fdgx$!&62\"F4 7$$\"0m<>!>>m5Fdgx$!&w1\"F47$$\"0vhSj,$p5Fdgx$!&S1\"F47$$\"0%e?m8Ts5Fd gx$!&51\"F47$$\"0*yFKi'R2\"Fdgx$!&49\"F47$$\"0%*\\$)4@b2\"Fdgx$!%F4 7$$\"0)>Ukf2x5Fdgx$!&nB\"F47$$\"0.%\\I3jy5Fdgx$!&,C\"F47$$\"0l'R&zs`3 \"Fdgx$!&)H7F47$$\"0F*HgZ6#4\"Fdgx$!&!e7F47$$\"0n:&3@y.6Fdgx$!&iN\"F47 $$\"0K8`H#[56Fdgx$!&'e8F47$$\"0'46#[#=<6Fdgx$!&)*R\"F47$$\"0?T*45[B6Fd gx$!&@b\"F47$$\"0Vrx`z(H6Fdgx$!&\"[;F47$$\"0aJKQ)*G8\"Fdgx$!&.k\"F47$$ \"0m\"pGs,O6Fdgx$!&5j\"F47$$\"0y^T2O\"R6Fdgx$!&/l\"F47$$\"0!>h>\\DU6Fd gx$!&vt\"F47$$\"0)o8YiPX6Fdgx$!&Cy\"F47$$\"0'=msv\\[6Fdgx$!&>x\"F47$$ \"0NCfBe+:\"Fdgx$!&>&>F47$$\"0%o=**)=;:\"Fdgx$!&'z?F47$$\"0L\\CczJ:\"F dgx$!&75#F47$$\"0#=rD-ua6Fdgx$!&W.#F47$$\"0anmL26;\"Fdgx$!&8^\"F47$$\" 0FBwWuu;\"Fdgx$!&'o5F47$$\"0qq&yMAu6Fdgx$!&\"*p\"F47$$\"08=&4D(4=\"Fdg x$!&SW#F47$$\"0]zX.Y<=\"Fdgx$!&6V#F47$$\"0'3kf&>D=\"Fdgx$!&OP#F47$$\"0 A-Z3$H$=\"Fdgx$!&'RCF47$$\"0ej(4m1%=\"Fdgx$!&B^#F47$$\"0I'))fOh&=\"Fdg x$!&(>EF47$$\"0-4+rgr=\"Fdgx$!&il#F47$$\"0Za-\"[D!>\"Fdgx$!&Di#F47$$\" 0#**\\5*[L>\"Fdgx$!&Vd#F47$$\"0cVZ=.k>\"Fdgx$!&Ua#F47$$\"0@()*euX*>\"F dgx$!&Qg#F47$$\"0/4hf%)4?\"Fdgx$!&fo#F47$$\"0'3BL<^-7Fdgx$!&^x#F47$$\" 0o_.()QS?\"Fdgx$!&\\\"GF47$$\"0]uu+mb?\"Fdgx$!&'\\FF47$$\"0P*p\\AQ17Fd gx$!&Qn#F47$$\"0CC>\\)>27Fdgx$!&'*f#F47$$\"0oOIh1w?\"Fdgx$!&*yDF47$$\" 06\\Tt9!37Fdgx$!&n[#F47$$\"0ah_&GU37Fdgx$!&@e#F47$$\"0)RPw4$)37Fdgx$!& #pFF47$$\"0sB3Yj/@\"Fdgx$!&;x$F47$$\"0Yt_%f477Fdgx$!&*[WF47$$\"0L)\\(= 7H@\"Fdgx$!&^f%F47$$\"0?B(H%GP@\"Fdgx$!&Ck%F47$$\"02[>nWX@\"Fdgx$!&Ki% F47$$\"0%H<94O:7Fdgx$!&sc%F47$$\"0oA')R$*p@\"Fdgx$!&XU%F47$$\"0VsI)ei= 7Fdgx$!&cH%F47$$\"0AYP\"[D?7Fdgx$!&'yTF47$$\"0+?Wu$)=A\"Fdgx$!&.2%F47$ $\"0y$4vE^B7Fdgx$!&%>SF47$$\"0dndgT^A\"Fdgx$!&,6%F47$$\"0OTk`qnA\"Fdgx $!&@Q%F47$$\"09:rY*RG7Fdgx$!&zr%F47$$\"0._C$R@H7Fdgx$!&W\"[F47$$\"0#*) y(RG+B\"Fdgx$!&Hz%F47$$\"0#e7jG%3B\"Fdgx$!&Gg%F47$$\"0ri%GtlJ7Fdgx$!&z @%F47$$\"0kv/R>JB\"Fdgx$!&K=$F47$$\"0d)[_9eM7Fdgx$!&;k#F47$$\"0],X^VgB \"Fdgx$!&&>RF47$$\"0V9ld0vB\"Fdgx$!&4,&F47$$\"0!4_2mBQ7Fdgx$!&%o_F47$$ \"0OF&Qw'*Q7Fdgx$!&FO&F47$$\"0#Q`p')pR7Fdgx$!&UM&F47$$\"0HS0qH/C\"Fdgx $!&AE&F47$$\"0A`Dw\"*=C\"Fdgx$!&P/&F47$$\"0:mX#QNV7Fdgx$!&m%[F47$$\"0' [ " 0 "" {MPLTEXT 1 0 203 "de := diff(y(x),x)=4*y(x)*cos(x)/(4+3*sin(2*y(x)));\nic := y(0) =1;\ngn2 := desolveRK(\{de,ic\},y(x),x=0..4*Pi,method=rk67,output=rkst ep);\nevalf[15](plot('gn2'(x)-g(x),x=0..4*Pi,color=magenta,numpoints=1 00));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"x GF,,$**\"\"%\"\"\"F)F0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sinG6#,$*&\"\"#F0F) F0F0F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\" !\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 715 153 153 {PLOTDATA 2 "6&-%'CU RVESG6#7`z7$$\"\"!F)F(7$$\"0b%\\<&p-k'!#;F(7$$\"0\"*)\\.R0G8!#:F(7$$\" 05\"f`q$ph\"F1$\"\"\"!#97$$\"0I$o.-#e!>F1$\"\"$F77$$\"0]vPN.Z>#F1$\"#I F77$$\"0pnQ]'e$[#F1$\"$K\"F77$$\"0Nkjw.Jy$F1$\"$.#F77$$\"0HCG2N74&F1$ \"$D$F77$$\"0+xh1#>UdF1$\"$<%F77$$\"0rH&f!\\JR'F1$\"$D&F77$$\"0+j1_pm* pF1$\"$0(F77$$\"0G'z\")**=+wF1$\"$Y*F77$$\"0SI?Y+^A)F1$\"%S8F77$$\"0_k A%4,]))F1$\"%s=F77$$\"0Im[D%H'\\*F1$\"%'Q#F77$$\"0\"oucxD95F7$\"%7[F77 $$\"0+HT#)y'y5F7$\"%4WF77$$\"0>6:*)*4V6F7$\"%[IF77$$\"0\\pw([O47F7$\"% )f#F77$$\"0zFQ')HcF\"F7$\"%IBF77$$\"0\"[q*4'*RL\"F7$\"%*>#F77$$\"0$=eN BO#R\"F7$\"%<@F77$$\"08m2XvP_\"F7$\"%\"*>F77$$\"0HF3;Gdl\"F7$\"%5=F77$ $\"0c?Sg3$>E=F7$\"%Y:F77$$\"0xc!R!4M$=F7$\"%.:F77$$\"0i[2=E1%=F7$\"%i8F77$$\"0 ZSCKVy%=F7$\"$(**F77$$\"0KKTYg]&=F7$\"$e(F77$$\"0F7$\"$`(F77$$\"0U(RK3pK>F7$\"$*yF77$$\"0Ua9fa)\\>F7$ \"$<*F77$$\"0T60N=q'>F7$\"$#)*F77$$\"0SD'oeM,?F7Fbt7$$\"0SRnQtc.#F7$\" %XNF77$$\"0mM?M8-0#F7$\"%')QF77$$\"0#*HtH`Z1#F7$\"%>TF77$$\"0u`hG)Qo?F 7$\"%/UF77$$\"0bx\\FB?2#F7$\"%'G%F77$$\"0O,QEec2#F7$\"%FVF77$$\"0=DED$ Hz?F7$\"%dTF77$$\"0+\\9CGH3#F7$\"%yPF77$$\"0\"GFIKc'3#F7$\"%GQF77$$\"0 i'4>#)>!4#F7$\"%tQF77$$\"0W?z?LQ4#F7$\"%ARF77$$\"0'4^=J\"H7#F7$\"%iOF7 7$$\"0[,\"HI*>:#F7$\"%LHF77$$\"0/:usY'>AF7$\"%.\"F17$$\"0_:SscW>%F7$!%_6F17$$\"0OO#[rm8VF7$!%C6F17$$\"0,4&Hc* RW%F7$!%<F17$$\"0ak!4:wiYF7$!%5EF17$$\"0b-U:2[ p%F7$!%=MF17$$\"0mo_5ouv%F7$!%BMF17$$\"0wMj0H,#[F7$!%YMF17$$\"0_g1;HH& [F7$!%QNF17$$\"0F')\\EHd)[F7$!%mQF17$$\"0-7$p$H&=\\F7$!%Q[F17$$\"0yPOZ H8&\\F7$!%W\\F17$$\"0!*Q8F5X,&F7$!%%)\\F17$$\"02S!p5px]F7$!%t]F17$$\"0 ?nX\"o**4^F7$!%[_F17$$\"0I%4gDIU^F7$!%KdF17$$\"0S@cI3Y<&F7$!%\")pF17$$ \"0_[609p?&F7$!%,\")F17$$\"0?Nk_!*4F&F7$!%D#)F17$$\"0%=s,q1N`F7$!%u$)F 17$$\"0S`Z\"o]k`F7$!%v%)F17$$\"0+&yFm%RR&F7$!%I')F17$$\"0g;3W'QBaF7$!% 4*)F17$$\"0:[QDEGX&F7$!%D%*F17$$\"0]j=gnl[&F7$!&I0\"F17$$\"0!*y)\\*3._ &F7$!&&\\7F17$$\"0g')Qizr`&F7$!&xO\"F17$$\"0I%*yH]Sb&F7$!&kP\"F17$$\"0 +->(4#4d&F7$!&[Q\"F17$$\"0o4fk\"z(e&F7$!&RR\"F17$$\"0l1P(*[\"[cF7$!&)G 9F17$$\"0k.:I1&3dF7$!&AY\"F17$$\"0&ez,)fGx&F7$!&OW\"F17$$\"0-)3-L@PeF7 $!&HT\"F17$$\"0D*=8y!))*eF7$!&%f9F17$$\"0\\!HCBSgfF7$!&O]\"F17$$\"0vt' =()f%*fF7$!&\"4:F17$$\"00dI6&zGgF7$!&\\X\"F17$$\"0q[-J$*e/'F7$!&xP\"F1 7$$\"0NSu]\"*H1'F7$!&[G\"F17$$\"0+KYq*3!3'F7$!&%*H\"F17$$\"0kB=!z=(4'F 7$!&PJ\"F17$$\"0bJ:.6k:'F7$!&'o8F17$$\"0VR7;Mc@'F7$!&OU\"F17$$\"0+yJ%H &GG'F7$!&LQ\"F17$$\"0f;^sr+N'F7$!%\\8F77$$\"0g!eZVL6kF7$!%F9F77$$\"0gW +(pfskF7$!%(\\\"F77$$\"0n$QK.i1mF7$!%'p\"F77$$\"0*o=G)fAs'F7$!%D>F77$$ \"0gkbrfR&oF7$!%;BF77$$\"0a7]Iv6)pF7$!%\")GF77$$\"0+.jaTZ/(F7$!%wLF77$ $\"0\\$f(y2$3rF7$!%pTF77$$\"0:sQ)R(*RrF7$!%QZF77$$\"0!3:!=S;<(F7$!%xbF 77$$\"0XHkP1L?(F7$!%bqF77$$\"083Fds\\B(F7$!%!Q*F77$$\"0+(GBK=]sF7$!&b1 \"F77$$\"0!f'Q(QRlsF7$!&F@\"F77$$\"0![WCXg!G(F7$!&.L\"F77$$\"0lB]<:eH( F7$!&5]\"F77$$\"0]-c#e-6tF7$!&sk\"F77$$\"0S\"=wkBEtF7$!&Cp\"F77$$\"0Ig n7Z9M(F7$!&Mj\"F77$$\"0=RtxdmN(F7$!&5_\"F77$$\"0?Q&4Sa*Q(F7$!&eE\"F77$ $\"0?Pg!)F7$!%XoF77$$\"0VW CMM&4b\\#)F7$!&!z6F77$ $\"0q/[r([#G)F7$!&(38F77$$\"0b*=wWU:$)F7$!&$z9F77$$\"0+#)o&G*=L)F7$!&Z f\"F77$$\"0SuvBh$[$)F7$!&Yw\"F77$$\"0&oE='H[O)F7$!&/)>F77$$\"0Ff*)*zH \"Q)F7$!&=2#F77$$\"0gw(yfY'R)F7$!&Z-#F77$$\"0&RfeRj6%)F7$!&&o=F77$$\"0 I6%Q>!oU)F7$!&al\"F77$$\"0gG#=*p>W)F7$!&GW\"F77$$\"0!f/)*y8d%)F7$!&sD \"F77$$\"0Djy(eIs%)F7$!&R5\"F77$$\"0g!odQZ([)F7$!%M)*F77$$\"0$z\\P=k-& )F7$!%[))F77$$\"05S>=yZc)F7$!%nuF77$$\"0K#QEX\"pi)F7$!%(3'F77$$\"0?8QV ?bp)F7$!%l\\F77$$\"02W7METw)F7$!%JUF77$$\"0Z(f+/O))))F7$!%0MF77$$\"0c- m*HT:!*F7$!%eGF77$$\"0`#49AiW\"*F7$!%8DF77$$\"0l&GG1Rj#*F7$!%fAF77$$\" 0V0=\"R***Q*F7$!%J?F77$$\"0Y,H[Lc^*F7$!&m&=F17$$\"0[h/xG+l*F7$!&Nr\"F1 7$$\"0QY(*yE'o(*F7$!&Yf\"F17$$\"0g`p`Xq$)*F7$!&h`\"F17$$\"0!3;%Gka!**F 7$!&.[\"F17$$\"0Ia'Gp?n**F7$!&%)R\"F17$$\"0y9t&\\*G+\"!#8$!&#f7F17$$\" 0#yDpS+45Fdgn$!&wA\"F17$$\"0'3?\"=8^,\"Fdgn$!&r>\"F17$$\"0;>qp^#G5Fdgn $!&<4\"F17$$\"0CU3OV9/\"Fdgn$!&00\"F17$$\"02o;#eW`5Fdgn$!&>-\"F17$$\"0 m<>!>>m5Fdgn$!&Z+\"F17$$\"0.%\\I3jy5Fdgn$!&?/\"F17$$\"0l'R&zs`3\"Fdgn$ !&v.\"F17$$\"0F*HgZ6#4\"Fdgn$!&k1\"F17$$\"0P`tfJ]4\"Fdgn$!&18\"F17$$\" 0Z2WV[z4\"Fdgn$!&H?\"F17$$\"0dh9Fl35\"Fdgn$!&I?\"F17$$\"0n:&3@y.6Fdgn$ !&M?\"F17$$\"0K8`H#[56Fdgn$!%F17$$\"0'46#[#=<6Fdgn$!&]D\"F17$$\"0Vr x`z(H6Fdgn$!&\"y8F17$$\"0aJKQ)*G8\"Fdgn$!&_Q\"F17$$\"0m\"pGs,O6Fdgn$!& aR\"F17$$\"0y^T2O\"R6Fdgn$!&\\T\"F17$$\"0!>h>\\DU6Fdgn$!&/Y\"F17$$\"0) o8YiPX6Fdgn$!&#o:F17$$\"0'=msv\\[6Fdgn$!&Es\"F17$$\"0%o=**)=;:\"Fdgn$! &_t\"F17$$\"0#=rD-ua6Fdgn$!&%[F 17$$\"0UWS*zfx6Fdgn$!&s0#F17$$\"08=&4D(4=\"Fdgn$!&'pAF17$$\"0ej(4m1%= \"Fdgn$!&lO#F17$$\"0-4+rgr=\"Fdgn$!&\\R#F17$$\"0Za-\"[D!>\"Fdgn$!&[U#F 17$$\"0#**\\5*[L>\"Fdgn$!&eX#F17$$\"0cVZ=.k>\"Fdgn$!&s[#F17$$\"0@()*eu X*>\"Fdgn$!&t^#F17$$\"0'3BL<^-7Fdgn$!&z`#F17$$\"0]uu+mb?\"Fdgn$!&4`#F1 7$$\"0VsI)ei=7Fdgn$!&Ti#F17$$\"0ri%GtlJ7Fdgn$!&mp#F17$$\"0kv/R>JB\"Fdg n$!&gj#F17$$\"0d)[_9eM7Fdgn$!&`c#F17$$\"0],X^VgB\"Fdgn$!&)*e#F17$$\"0V 9ld0vB\"Fdgn$!&Xh#F17$$\"0HS0qH/C\"Fdgn$!&om#F17$$\"0:mX#QNV7Fdgn$!&:s #F17$$\"0e$yLYnY7Fdgn$!&fy#F17$$\"0-,IW&**\\7Fdgn$!&3&GF17$$\"0Y=AD;LD \"Fdgn$!&.!HF17$$\"0*eVhqjc7Fdgn$!&q)GF1-%'COLOURG6&%$RGBG$\"*++++\"! \")F(Fego-%+AXESLABELSG6$Q\"x6\"Q!F\\ho-%%VIEWG6$;F($\"0#fVhqjc7Fdgn%( DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Cur ve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph compares the two meth ods of interpolation in terms of their errors. The discrete points giv e the errors at the interpolation points whose horizontal location is \+ determined by extracting the " }{TEXT 282 1 "x" }{TEXT -1 38 " coordin ates from a discrete solution." }}{PARA 0 "" 0 "" {TEXT -1 74 "The err or curve for the polynomial interpolation obtained via the option \"" }{TEXT 262 15 "output=rkinterp" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" }{TEXT -1 107 " while the error curve for interpolation o btained by performing Runge-Kutta steps obtained via the option \"" } {TEXT 262 13 "output=rkstep" }{TEXT -1 15 "\" is shown in " }{TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 585 "de := diff(y(x),x)=4*y(x)*c os(x)/(4+3*sin(2*y(x)));\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},x= 0..8.6,method=rk67,output=rkinterp):\ngn2 := desolveRK(\{de,ic\},x=0.. 8.6,method=rk67,output=rkstep):\npts := desolveRK(\{de,ic\},x=0..8.6,m ethod=rk67,output=points):\npts2 := [seq([pts[i,1],evalf[18](gn2(pts[i ,1])-g(pts[i,1]))],i=1..nops(pts))]:\np1 := plot([pts2$3],style=point, symbol=[circle,diamond,cross],color=[black,coral$2]):\np2 := evalf[18] (plot(['gn1'(x)-g(x),'gn2'(x)-g(x)],x=8..8.5,\n color=[blu e,magenta],numpoints=100)):\nplots[display]([p1,p2],view=[8..8.5,-2.2e -10..2e-10]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\" yG6#%\"xGF,,$**\"\"%\"\"\"F)F0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sinG6#,$*& \"\"#F0F)F0F0F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-% \"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 674 289 289 {PLOTDATA 2 "6)-%'CURVESG6&7_t7$$\"\"!F)F(7$$\"3-+++++++5!#>$!3q*************>&! #L7$$\"3y**************fF-$!3%*************p7!#K7$$\"3/+++PT3LC!#=$\"3 2+++++^-8!#H7$$\"37+++AmRXPF:$\"32+++++UD?F=7$$\"3u*****4/ip&[F:$\"3#* **********)*>JF=7$$\"3y******pc<)y&F:$\"3q*********zMb%F=7$$\"3w*****H J%)yc'F:$\"3=+++++'pJ'F=7$$\"3N+++UYw@sF:$\"3Y*********>aU)F=7$$\"3Y** ***>cvAx(F:$\"33++++S+(3\"!#G7$$\"3-+++%=%HR#)F:$\"31++++?@n8Ffn7$$\"3 `*****pL1@k)F:$\"3-++++5Iz;Ffn7$$\"39+++m))34!*F:$\"3+++++5=!)>Ffn7$$ \"3T+++.d)fK*F:$\"3()********R8.@Ffn7$$\"3))******>ke7&*F:$\"3.++++]o4 CFfn7$$\"3E+++&3M`o*F:$\"31++++!f#3GFfn7$$\"3W*****z[J0%)*F:$\"3<++++] 'pL$Ffn7$$\"35+++8uJ+5!#<$\"30++++qYOVFfn7$$\"3********>s<65F]q$\"38++ ++]R4ZFfn7$$\"3#******Hj85-\"F]q$\"3'*********p;e\\Ffn7$$\"31+++->.J5F ]q$\"33++++g)\\3&Ffn7$$\"32+++q&Q./\"F]q$\"3'**********=N:&Ffn7$$\"35+ ++O\"*f\\5F]q$\"3/+++++$R6&Ffn7$$\"3'******f(=Mf5F]q$\"3r********z5T\\ Ffn7$$\"3)******p')R+2\"F]q$\"3')********RwOYFfn7$$\"3%*******eY=#3\"F ]q$\"3C++++5ZWUFfn7$$\"3))*****pv8j4\"F]q$\"3$*********H!o$QFfn7$$\"32 +++:v!H6\"F]q$\"37++++]t$[$Ffn7$$\"3$******fj%4K6F]q$\"3*)********R\"* 4KFfn7$$\"33+++*G>Q:\"F]q$\"3I++++S[')HFfn7$$\"3++++-/Ry6F]q$\"37++++q p\"z#Ffn7$$\"3'******\\#y[17F]q$\"3-++++IA>EFfn7$$\"3/+++u,.R7F]q$\"3) *********H$)oCFfn7$$\"33+++K0Ax7F]q$\"32++++I+RBFfn7$$\"30+++wnyA8F]q$ \"30++++SqHAFfn7$$\"3)******p[s(y8F]q$\"3&*********z/T@Ffn7$$\"3-+++%* e&\\X\"F]q$\"33++++gFh?Ffn7$$\"3*******40?w`\"F]q$\"32++++]'4\">Ffn7$$ \"3(******z0v4i\"F]q$\"31++++qU#z\"Ffn7$$\"3,++++sS0F]q$\"3q*********f4Q(F=7$$\"3'******f=+X %>F]q$\"3>+++++LC!*F=7$$\"3%******HgQd(>F]q$\"3#**********R/?\"Ffn7$$ \"3(******pOm56#F]q$\"3')********f6+RFfn7$$\"3$********Qi.7#F]q$\"3!) ********R,=PFfn7$$\"3A+++lVwH@F]q$\"3%*********4s\"\\$Ffn7$$\"39+++-or R@F]q$\"3q********\\USKFfn7$$\"3=+++!G%p]@F]q$\"3)*********\\WpHFfn7$$ \"3?+++A'fL;#F]q$\"3;++++?)=o#Ffn7$$\"31+++:4()y@F]q$\"3+++++?vtBFfn7$ $\"3/+++S9B+AF]q$\"3')********\\#3)>Ffn7$$\"3y*****z1l.B#F]q$\"39+++++ f*e*F=7$$\"3!******Rd!elAF]q$!3************z>j!#I7$$\"3)******4Yu8I#F] q$!3)**********p<(HF=7$$\"30+++Ca%4M#F]q$!3E+++++\\_RF=7$$\"3#******4C sgQ#F]q$!3m*********4YZ%F=7$$\"35+++*H=\"QCF]q$!3S+++++[pZF=7$$\"35+++ j*\\%)\\#F]q$!3g*********zC$\\F=7$$\"35+++I@\\oDF]q$!3&**********4A+&F =7$$\"35+++5Lr\\EF]q$!3,+++++%e+&F=7$$\"3*)*****HXxNu#F]q$!3%)******** *p*e\\F=7$$\"33+++Zo^^GF]q$!3G+++++[s[F=7$$\"3!*******Rt+vHF]q$!3j**** *****\\#RZF=7$$\"3$)*****HE!*e6$F]q$!34+++++]UXF=7$$\"3!)*****R))fsF$F ]q$!3-++++]r_UF=7$$\"3;+++Y*ejY$F]q$!3M+++++smPF=7$$\"3(******H2zzr$F] q$!3#*********R:\\>F=7$$\"3/+++&3Nn&RF]q$!3**********HAL7F=7$$\"3++++% >@X>%F]q$!3+++++5v^6F=7$$\"3y*****frLEV%F]q$!3,++++Se?&G1Y'F]q$!3 +++++S:y9Ffn7$$\"3')*****p\"f>.mF]q$!3-++++5P)o\"Ffn7$$\"3&)*****zwgIs 'F]q$!3/++++!fE#>Ffn7$$\"3&)*****4rIO#oF]q$!3/++++!=x=#Ffn7$$\"3f***** >pRy!pF]q$!3#*********R&[\\#Ffn7$$\"3i*****zl\"RypF]q$!35++++ITfGFfn7$ $\"3m*****z2qw.(F]q$!3#)********R=+LFfn7$$\"3i*****fjgx3(F]q$!3w****** **\\RWQFfn7$$\"3B+++mldIrF]q$!3.+++++yMXFfn7$$\"3o*****>_&GorF]q$!3+++ +++AuaFfn7$$\"3W+++2Ex1sF]q$!3E++++SQ*e(Ffn7$$\"3H+++JzTEsF]q$!3W++++! z&p()Ffn7$$\"3\"******4UVZC(F]q$!3,++++ow;5!#F7$$\"3U+++j]#3E(F]q$!3++ +++`oj6Ffjl7$$\"3%)******[H%zF(F]q$!31++++nP*H\"Ffjl7$$\"3e*****>9/4H( F]q$!3)********fvqW\"Ffjl7$$\"3c*****zKN4I(F]q$!39++++0Sd:Ffjl7$$\"3L+ ++$)oP6tF]q$!3))*******fr@l\"Ffjl7$$\"3)*******4v#3K(F]q$!33++++^:!p\" Ffjl7$$\"3A+++:6/ItF]q$!3)********R)y%o\"Ffjl7$$\"3(******>+$fRtF]q$!3 (********pLWk\"Ffjl7$$\"3'******Hqh*\\tF]q$!3-++++#yhd\"Ffjl7$$\"3))** ***zlG;O(F]q$!37++++J\"e[\"Ffjl7$$\"3C+++j*=^P(F]q$!3%*********\\Zx8Ff jl7$$\"3;+++0i&4R(F]q$!3-+++++Kc7Ffjl7$$\"3i*****pD$R4uF]q$!31++++m\"= 8\"Ffjl7$$\"3y*******Hj.V(F]q$!3/++++3e;5Ffjl7$$\"3=+++<@/auF]q$!3s*** *****p%[;*Ffn7$$\"3U+++u0-\"[(F]q$!3.++++Sl3$)Ffn7$$\"3A+++?/:7vF]q$!3 [********p1yvFfn7$$\"3q*****>sO&[vF]q$!3;++++5mdpFfn7$$\"33+++94r\"f(F ]q$!3a********pdLkFfn7$$\"30+++()y;WwF]q$!3[********pm)*fFfn7$$\"3$)** ***f11?r(F]q$!3=++++I9\\cFfn7$$\"3K+++\"eR&*z(F]q$!3I++++]7)e&Ffn7$$\" 3;+++'4N7)yF]q$!3E+++++&Gm&Ffn7$$\"31+++YRwtzF]q$!35+++++,uiFfn7$$\"3' ******fx5d/)F]q$!35++++gf`nFfn7$$\"3C+++\"fY77)F]q$!3B++++59>#)Ffn7$$ \"3K*****pKi%*=)F]q$!3c********\\_\")**Ffn7$$\"3\"3++]#38D#)F]q$!3++++ +cW!4\"Ffjl7$$\"3)******RaeoD)F]q$!3!********4]N>\"Ffjl7$$\"3C*****f3[ PG)F]q$!32++++i'fI\"Ffjl7$$\"3Z*****H9%H3$)F]q$!32++++'>9U\"Ffjl7$$\"3 !)******H!>FL)F]q$!3')*******4z\\f\"Ffjl7$$\"3S+++b(ztM)F]q$!3/++++.ca Ffjl7$$\"3I+++8d&\\P)F]q$!33+ +++%eH0#Ffjl7$$\"3O+++P&HYQ)F]q$!3#********Hl(p?Ffjl7$$\"3#3+++Q_VR)F] q$!3-++++bmQ?Ffjl7$$\"3_+++jok.%)F]q$!3)*********QDj>Ffjl7$$\"3w+++bC0 8%)F]q$!35++++4]]=Ffjl7$$\"3I*****H<8IU)F]q$!3!********HW(4\"Ffjl7$$\"3e+++z%3P[)F]q$!3*********H#Q 65Ffjl7$$\"3,+++`L&Q^)F]q$!3S********H%4&))Ffn7$$\"31+++(Hl\"\\&)F]q$! 35++++qfv!)Ffn7$$\"3')******)yx\\e)F]q$!3K++++!p5/(Ffn7$$\"3k********* ****f)F]q$!3\\++++!>\\g'Ffn-%'COLOURG6&%$RGBGF)F)F)-%'SYMBOLG6#%'CIRCL EG-%&STYLEG6#%&POINTG-F$6&F&-Fhim6&Fjim$\"*++++\"!\")$\")AR!)\\FijmF(- F\\jm6#%(DIAMONDGF_jm-F$6&F&Fejm-F\\jm6#%&CROSSGF_jm-F$6$7[]l7$$\"\")F )$!(!z=YF]q7$$\"3feeeeTG0!)F]q$!(AZF]q7$$\"3][[[j)Qy-)F]q$!(axn%F]q7$$\"35555&>S-.)F]q$! (A\"oYF]q7$$\"3++++:M[J!)F]q$!(2')o%F]q7$$\"3!**)*)*[jEF.)F]q$!(FVt%F] q7$$\"3!)zzza)pR.)F]q$!(Y6\"[F]q7$$\"3qpppuI@N!)F]q$!(xT#\\F]q7$$\"3IH HHaXyP!)F]q$!()\\&G&F]q7$$\"3*))))))Q.c./)F]q$!(tO!eF]q7$$\"3qrrrm#>H/ )F]q$!(J!pjF]q7$$\"3baaa*\\#[X!)F]q$!('[3nF]q7$$\"3522d*4>\"[!)F]q$!(B Be&F]q7$$\"3gfff*pb20)F]q$!(=(QHF]q7$$\"3NLLL=!yI0)F]q$!'E0bF]q7$$\"32 222P.Sb!)F]q$\"(xJR\"F]q7$$\"3&HHHzr9!e!)F]q$\"()flGF]q7$$\"3zyyy)4H11 )F]q$\"(NMj$F]q7$$\"3qsssx`Gh!)F]q$\"(mct$F]q7$$\"3lmmmc;%>1)F]q$\"(*= 3QF]q7$$\"3ggggNzfi!)F]q$\"(FW&QF]q7$$\"3baaa9UDj!)F]q$\"(Bx(QF]q7$$\" 3SUUUsnck!)F]q$\"(&GoQF]q7$$\"3IIIII$ze1)F]q$\"(6P!QF]q7$$\"3vvvv:\"4% o!)F]q$\"((o&f$F]q7$$\"3@@@@,*Q42)F]q$\"(B$fLF]q7$$\"3JJJJwM`v!)F]q$\" (9L*HF]q7$$\"3]]]]qo*43)F]q$\"(O6i#F]q7$$\"3----#3Dc3)F]q$\"(lmE#F]q7$ $\"3lkk9PpJ)3)F]q$\"(LA3#F]q7$$\"3FFFF#z354)F]q$\"('G#)>F]q7$$\"3]ZZAm ,?#4)F]q$\"(XA)>F]q7$$\"3qnn#F]q7$$\"3qnn&=\")F]q$!(]kG'F]q7$$\"38888jC4@\")F]q$!(a19)F]q7$ $\"3?AA(4nGC7)F]q$!(PwW(F]q7$$\"3IJJ\")y[wB\")F]q$!(`(Q_F]q7$$\"3SSSl' 3,^7)F]q$!($fFBF]q7$$\"3]\\\\\\%HPk7)F]q$\"'A2wF]q7$$\"3&[[[tY+w7)F]q$ \"(/1K$F]q7$$\"3????SOwG\")F]q$\"(f,h&F]q7$$\"3bbb08o#*H\")F]q$\"(a1b( F]q7$$\"3\"444f)**3J\")F]q$\"(z.6*F]q7$$\"3]]]+.DgL\")F]q$\")UXA6F]q7$ $\"35555?]6O\")F]q$\")]e$>\"F]q7$$\"3NNN5RRwO\")F]q$\")#y_>\"F]q7$$\"3 ggg5eGTP\")F]q$\")j'=>\"F]q7$$\"3&ee3rxh!Q\")F]q$\")]=%=\"F]q7$$\"3566 6'p5(Q\")F]q$\")c,t6F]q7$$\"3ghh6M&3+9)F]q$\")>-V6F]q7$$\"37777sjIT\") F]q$\")sy16F]q7$$\"3FFFF(4&QY\")F]q$\"(xqf*F]q7$$\"3++++D!*H^\")F]q$\" (SbQ)F]q7$$\"3%RRRR5bn:)F]q$\"(+8/(F]q7$$\"3vtttoj?f\")F]q$\"(\"y9lF]q 7$$\"3a```Lwlh\")F]q$\"(fL?'F]q7$$\"3qsssdi'H;)F]q$\"(H'zhF]q7$$\"3!>> >>)[Fk\")F]q$\"(EIG'F]q7$$\"356661Nel\")F]q$\"(k$GlF]q7$$\"3IIIII@*o;) F]q$\"(76#pF]q7$$\"3&QQQjuj#p\")F]q$\"(af(zF]q7$$\"3PPPPi`jr\")F]q$\"( OeI*F]q7$$\"3gii7l\"GU<)F]q$\")a$H1\"F]q7$$\"3)yyyy'4#o<)F]q$\")yW46F] q7$$\"3qqq?$fg#z\")F]q$\"(B%o**F]q7$$\"3a```=-q\"=)F]q$\"(&=;nF]q7$$\" 3DCCCu_(H=)F]q$\"(*38TF]q7$$\"3&\\\\\\*H.D%=)F]q$\"'k-**F]q7$$\"3III!y &y)[=)F]q$!'1aqF]q7$$\"3llll&QDb=)F]q$!(%fSCF]q7$$\"3+,,^8H;'=)F]q$!(E X;%F]q7$$\"3OOOOT/!o=)F]q$!(SS\"eF]q7$$\"3liiPTq/)=)F]q$!(gj^)F]q7$$\" 3!*))))QTOH*=)F]q$!(y`')*F]q7$$\"3:::ST-a!>)F]q$!(84***F]q7$$\"3TTTTTo y\">)F]q$!(\"3%)**F]q7$$\"3IGGy!*pR%>)F]q$!(v*))**F]q7$$\"3::::Sr+(>)F ]q$!)3&[+\"F]q7$$\"3GGGG3\\.-#)F]q$!);(G-\"F]q7$$\"3PPPPFl<2#)F]q$!)H) =/\"F]q7$$\"3EEEErbF7#)F]q$!)<_d5F]q7$$\"3....j5'p@)F]q$!)jxi5F]q7$$\" 3?>>>9hk>#)F]q$!)!Q_1\"F]q7$$\"3NNNNl6LA#)F]q$!)1)H2\"F]q7$$\"3qttBO>` B#)F]q$!)]By5F]q7$$\"357772FtC#)F]q$!):4$3\"F]q7$$\"3]]]+yM$fA)F]q$!)$ fw4\"F]q7$$\"3*)))))))[U8F#)F]q$!)Q)z6\"F]q7$$\"3!333Lz%pH#)F]q$!)_og6 F]q7$$\"3tsssP`DK#)F]q$!)'4N=\"F]q7$$\"3XXXX0hqM#)F]q$!)2U%>\"F]q7$$\" 3====to:P#)F]q$!)w+/7F]q7$$\"3QQQQ)R*fU#)F]q$!)aJE7F]q7$$\"3NMM%=\"e& \\C)F]q$!)MXN7F]q7$$\"3IIIIDAJZ#)F]q$!)c)fC\"F]q7$$\"3+)zz/]\\'[#)F]q$ !):\"=D\"F]q7$$\"3llllvn)*\\#)F]q$!)1Zb7F]q7$$\"3NLL$30C8D)F]q$!)E:a7F ]q7$$\"3,,,,E8m_#)F]q$!)0&[C\"F]q7$$\"3!44fr5!)QD)F]q$!)%*>G7F]q7$$\"3 !333$))))4b#)F]q$!)LC17F]q7$$\"3vvD))y#3dD)F]q$!)K$e>\"F]q7$$\"3qqqXpw Jc#)F]q$!).W)=\"F]q7$$\"3ll:.gq#pD)F]q$!)]/%>\"F]q7$$\"3hggg]k`d#)F]q$ !)JZ37F]q7$$\"3?==ogF?g#)F]q$!)XSI8F]q7$$\"3wvvvq!pGE)F]q$!)q\\'Q\"F]q 7$$\"3&HHHakp^E)F]q$!)([aR\"F]q7$$\"35555?-Zn#)F]q$!)6;,9F]q7$$\"35666 1.4q#)F]q$!)'\\'49F]q7$$\"37777#R5FF)F]q$!)_i=9F]q7$$\"3&eeeeET_F)F]q$ !)!>)Q9F]q7$$\"3gfffR@xx#)F]q$!)7Om9F]q7$$\"3gc1pWWSy#)F]q$!)tco9F]q7$ $\"3b``y\\n.z#)F]q$!):8m9F]q7$$\"3]]+)[0p'z#)F]q$!)K\"F]q7$$\"3qoo='\\]`G)F]q$!)%)ea9F]q7$$\"3----7/(yG)F]q$!)\") f&p\"F]q7$$\"3??qdCcZ)G)F]q$!)Q&)=#=F]q7$$\"3bbb0G&fbI)F]q$!)Y(ys\"F]q7$$ \"3gfff\\X=3$)F]q$!))f[T\"F]q7$$\"3SSS!zos$4$)F]q$!)5)Qc\"F]q7$$\"3?@@ @E3c5$)F]q$!)y>7=F]q7$$\"3+--_k*[F]q7$$\"3$GGGG5PHJ)F]q$ !)dra?F]q7$$\"3NLLLLLc:$)F]q$!)V8&*>F]q7$$\"3%QQQQc*==$)F]q$!)9\"[)=F] q7$$\"3:==V*HZ%>$)F]q$!)12P=F]q7$$\"3]__-N]q?$)F]q$!)F`%z\"F]q7$$\"3qp >#G!RL@$)F]q$!)%\\!yK)F]q$!)=MnF] q7$$\"38888.#R#G$)F]q$!)jS>@F]q7$$\"3IKKKF-'3L)F]q$!)TY')=F]q7$$\"3_^^ ^^7[L$)F]q$!)$30e\"F]q7$$\"3:8jDmZ3M$)F]q$!)3we:F]q7$$\"3vuu*4G)oM$)F] q$!)d!>a\"F]q7$$\"3SO'Qdz\"HN$)F]q$!)*3L`\"F]q7$$\"3+)zz/J&*eL)F]q$!)h (>`\"F]q7$$\"3?@@'*RB5P$)F]q$!)`$3a\"F]q7$$\"3WWWWp$4$Q$)F]q$!)FP_:F]q 7$$\"3b``.'p\"yS$)F]q$!)1[v:F]q7$$\"3jiiiASDV$)F]q$!)(4xf\"F]q7$$\"3qq q?ek$RM)F]q$!)@)Rg\"F]q7$$\"3!)yyy$*)=YM)F]q$!)4V:;F]q7$$\"3!poo$H8IX$ )F]q$!)J?P;F]q7$$\"3&\\\\\\\\w$)fM)F]q$!)!pEn\"F]q7$$\"3+..`+imY$)F]q$ !)>pr5.[$)F]q$!)&\\;c\"F]q7$$\"3DBB[*Gs$[$)F]q$!)%p>P\"F]q7$$\"3F FFF2Nr[$)F]q$!)4Xo6F]q7$$\"3IGG._C-\\$)F]q$!(C'3**F]q7$$\"3IHHz'RJ$\\$ )F]q$!(qUI)F]q7$$\"3IIIbT.k\\$)F]q$!(z*HpF]q7$$\"3IJJJ'G\\*\\$)F]q$!(e 1\"eF]q7$$\"3ILL$eO)F]q$!(4(R]F]q7$$\"3lmm;*onDO)F]q$!(l_8 'F]q7$$\"3]]+81!*)GO)F]q$!(?G7(F]q7$$\"3NMM4B.@j$)F]q$!(yRV)F]q7$$\"3? =o0S;`j$)F]q$!)u>15F]q7$$\"3----dH&QO)F]q$!)YT'>\"F]q7$$\"3gee$)4$[TO) F]q$!)Ct(Q\"F]q7$$\"3:::liOWk$)F]q$!)x'Ge\"F]q7$$\"3qrrY:!RZO)F]q$!)$) [kF]q7$$\"3STT\"R2DcO)F]q$!)&>j*>F]q7$$ \"3baaazd@m$)F]q$!)s22?F]q7$$\"3!3333>(Rn$)F]q$!)!HR-#F]q7$$\"32222-'y &o$)F]q$!)\\aL?F]q7$$\"3&pp>#[z$)p$)F]q$!)o\"G/#F]q7$$\"3&oooVH(4r$)F] q$!)\\w]?F]q7$$\"3vww^SmNs$)F]q$!)Efd?F]q7$$\"3nmmm')fht$)F]q$!)r+f?F] q7$$\"3]^^^1b6w$)F]q$!)Mx&3#F]q7$$\"3OOOOE]hy$)F]q$!)cq1@F]q7$$\"3+,,, \")=&*z$)F]q$!)Z&*4@F]q7$$\"3llllN()G\"Q)F]q$!)kl6@F]q7$$\"3+)zzH;d>Q) F]q$!)sv7@F]q7$$\"3IIII!fDEQ)F]q$!)/`6@F]q7$$\"3giiiBa`R)F]q$!)n%[,#F]q7$$\"3!zyyGc#e'R)F]q$!)4#f*>F]q7$$ \"3IEEw$*3\"yR)F]q$!)&)4()>F]q7$$\"3lkkkC#R!*R)F]q$!).Sx>F]q7$$\"3555& Qfa-S)F]q$!)z-n>F]q7$$\"3bbb0j*p9S)F]q$!)O#R&>F]q7$$\"3+,,EK`o-%)F]q$! )Q!>&>F]q7$$\"3YYYY,2!RS)F]q$!)a0f>F]q7$$\"3ljj8EX^1%)F]q$!)MA6>F]q7$$ \"3\"3333NG\"4%)F]q$!)*H(y=F]q7$$\"32222ZrP9%)F]q$!)-%o$=F]q7$$\"3]\\ \\\\uF:>%)F]q$!)HCma\"F]q7$ $\"3&GGySP?!Q%)F]q$!)D0F:F]q7$$\"3nmmmY4=R%)F]q$!)')*=^\"F]q7$$\"3\"44 4fy7XW)F]q$!)4[O9F]q7$$\"3]]]]!*)=qW)F]q$!)you8F]q7$$\"35555&*\\_\\%)F ]q$!)r;V8F]q7$$\"3&fffM*o+_%)F]q$!)UsB8F]q7$$\"3#====z)[a%)F]q$!)1;08F ]q7$$\"3FFFFPlXf%)F]q$!)!*)4B\"F]q7$$\"3====BL_k%)F]q$!)dh?5F]q7$$\"3q ssA+g'eY)F]q$!(/.[*F]q7$$\"3DFFFx'3sY)F]q$!(itG*F]q7$$\"3!===VN^&o%)F] q$!(62N*F]q7$$\"3OOOOJS*)p%)F]q$!(?NY*F]q7$$\"3][[tM^7r%)F]q$!([0b*F]q 7$$\"3ggg5QiNs%)F]q$!(>=i*F]q7$$\"3qssZTtet%)F]q$!(&4n'*F]q7$$\"3&[[[[ W=[Z)F]q$!(%QO'*F]q7$$\"3bcc1f*[sZ)F]q$!(*z6\"*F]q7$$\"3GGGGt%z'z%)F]q $!(qBK)F]q7$$\"3qqq?=!H.[)F]q$!(6xH)F]q7$$\"3:888j&y4[)F]q$!((RQ%)F]q7 $$\"3gbb03\"G;[)F]q$!(]:w)F]q7$$\"3+)zzHlxA[)F]q$!(#\\M#*F]q7$$\"3SSS! z>FH[)F]q$!(\\:u*F]q7$$\"3&GGGGuwN[)F]q$!)12/5F]q7$$\"3DDDv(GEU[)F]q$! (&)4s*F]q7$$\"3onnnKe([[)F]q$!(!*)R&)F]q7$$\"3+--_%4sh[)F]q$!(uKX&F]q7 $$\"3NOOOc$ou[)F]q$!(ar$GF]q7$$\"3qqq?=Yw)[)F]q$!(j%f7F]q7$$\"30000!)3 1!\\)F]q$!'S\"4'F]q7$$\"3qm;/;Ek!\\)F]q$!'#)3`F]q7$$\"3IGG._VA\"\\)F]q $!'a)R&F]q7$$\"3!**)R-)31=\\)F]q$!'.\"3'F]q7$$\"3]^^,CyQ#\\)F]q$!';DrF ]q7$$\"3vuu*fH^N\\)F]q$!'*)Q'*F]q7$$\"3)zzzzw9Z\\)F]q$!('f57F]q7$$\"#& )!\"\"$!(VO,#F]q-Fhim6&FjimF(F(Fgjm-F$6$7cs7$Fh[n$!()=njF]q7$F]\\n$!(' y)Q'F]q7$Fb\\n$!('f3kF]q7$Fg\\n$!((RKkF]q7$F\\]n$!(F)ekF]q7$Fa]n$!(>$* ['F]q7$F[^n$!(=T_'F]q7$F__n$!(i;d'F]q7$Fi_n$!(s>k'F]q7$F^`n$!(c$*o'F]q 7$Fc`n$!(F#[nF]q7$Fh`n$!($4onF]q7$F]an$!(*G%y'F]q7$Fgan$!(fO\"oF]q7$Fa bn$!(S![oF]q7$F_dn$!(@S)oF]q7$Fidn$!(s,#pF]q7$F^en$!(1W&pF]q7$Fcen$!(; t*pF]q7$Fhen$!(Fk.(F]q7$Fbfn$!(ju3(F]q7$Ffgn$!(A<9(F]q7$F`hn$!(])>sF]q 7$Fdin$!($QFtF]q7$F^jn$!(K;](F]q7$Fhjn$!(')ov(F]q7$F][o$!(o=&zF]q7$Fb[ o$!(==?)F]q7$F\\\\o$!(a)\\#)F]q7$Ff\\o$!(LJG)F]q7$Fj]o$!(AGM)F]q7$Fd^o $!(\"))4%)F]q7$Fb`o$!(Q@[)F]q7$Fg`o$!(')fb)F]q7$F\\ao$!(V3j)F]q7$Faao$ !(T\">()F]q7$F[bo$!(ed!))F]q7$F_co$!(d=\"*)F]q7$Fico$!(Y)H!*F]q7$Fcdo$ !(e1?*F]q7$F]eo$!(^eU*F]q7$F[go$!(y!f(*F]q7$F`go$!(T)e)*F]q7$Fego$!(%> m**F]q7$Fjgo$!)rl+5F]q7$F_ho$!)`e.5F]q7$Fdho$!)n#)45F]q7$Fiho$!)?A;5F] q7$F^io$!)=**G5F]q7$Fcio$!)loU5F]q7$Fhio$!)a'o0\"F]q7$F]jo$!)=;q5F]q7$ Fgjo$!)u\\%3\"F]q7$F[\\p$!)@-(4\"F]q7$Fe\\p$!)PY96F]q7$F_]p$!)00K6F]q7 $Fd]p$!)ae_6F]q7$F^^p$!)fuq6F]q7$Fh^p$!)&40=\"F]q7$Fb_p$!)*o()=\"F]q7$ F\\`p$!)pQ$>\"F]q7$F`ap$!)6l'>\"F]q7$Feap$!)t\"*37F]q7$Fjap$!);c@7F]q7 $Fdbp$!)_IW7F]q7$F^cp$!)%f9F\"F]q7$Fccp$!)Ld%G\"F]q7$Fhcp$!)Rq'H\"F]q7 $Fbdp$!)n&=I\"F]q7$F\\ep$!)q!fI\"F]q7$Faep$!)DG38F]q7$Ffep$!):=38F]q7$ $\"3qo=Jf0Y$G)F]q$!)&yoI\"F]q7$$\"3+--FQ04%G)F]q$!)D.38F]q7$$\"3NN&Gs^ ?ZG)F]q$!)c&=J\"F]q7$F[fp$!)xq:8F]q7$$\"3NNN5a/h'G)F]q$!).]B8F]q7$F`fp $!)?TJ8F]q7$F^hp$!)j%HO\"F]q7$Fhhp$!)Wo)R\"F]q7$F]ip$!)`E:9F]q7$Fbip$! )dEH9F]q7$$\"3b``GJY:F]q7$Fb^q$!)3$He\"F]q7$Fg^q$!)]'Hf\"F]q7$F\\_q$!)]M-;F ]q7$F``q$!)#=fi\"F]q7$Fj`q$!)[#)\\;F]q7$Fdaq$!)QG+F]q7$F\\^r$!):xF ]q7$Fhfr$!)x/+>F]q7$F]gr$!)glK=F]q7$Fbgr$!)$[hw\"F]q7$Fggr$!)r[#p\"F]q 7$F\\hr$!)/M@;F]q7$Ffhr$!)N/V:F]q7$Fjir$!)6rz9F]q7$F_jr$!)Q?49F]q7$Fij r$!)(*\\W8F]q7$Fc[s$!)Jj'G\"F]q7$Fh[s$!)CKJ7F]q7$F]\\s$!)&>p<\"F]q7$Fa ]s$!) " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 6" }{TEXT 283 66 " .. The accuracy of another adaptive order 6-7 Runge-Kutta method " }}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this ex ample we construct a continuous numerical solution to the differential equation" }}{PARA 257 "" 0 "" {TEXT -1 2 " " }{XPPEDIT 18 0 "dy/dx = 4*y*cos*x/(4+3*sin*2*y);" "6#/*&%#dyG\"\"\"%#dxG!\"\"*,\"\"%F&%\"yGF& %$cosGF&%\"xGF&,&F*F&**\"\"$F&%$sinGF&\"\"#F&F+F&F&F(" }{TEXT -1 2 ", \+ " }}{PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial condition " } {XPPEDIT 18 0 "y(0) = 1;" "6#/-%\"yG6#\"\"!\"\"\"" }{TEXT -1 2 ". " }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "Maple ca n find an analytical solution although it has an awkward form which re quires that an equation be solved for each evaluation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 161 "de := \+ diff(y(x),x)= 4*y(x)*cos(x)/(4+3*sin(2*y(x)));\nic := y(0)=1;\ndsolve( \{de,ic\},y(x));\ng := unapply(rhs(%),x):\nplot(g(x),x=0..4*Pi,0..3.4, labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%dif fG6$-%\"yG6#%\"xGF,,$**\"\"%\"\"\"F)F0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sin G6#,$*&\"\"#F0F)F0F0F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%# icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#% \"xG,$*&#\"\"\"\"\"#F+-%$expG6#-%'RootOfG6#,,*&\"\"%F+%#_ZGF+!\"\"*&F5 F+-%$sinGF&F+F+*&\"\"$F+-%#SiG6#-F.6#F6F+F7*&F5F+-%#lnG6#F,F+F+*&FFEF+F+F+F+" }}{PARA 13 "" 1 "" {GLPLOT2D 615 199 199 {PLOTDATA 2 "6% -%'CURVESG6$7cr7$$\"\"!F)$\"+++++5!\"*7$$\"+r66RF!#5$\"+CQh#=\"F,7$$\" +iTvIRF0$\"++(*\\w7F,7$$\"+arRA^F0$\"+]=+#Q\"F,7$$\"+IV_ikF0$\"+CJz>:F ,7$$\"+.:l-yF0$\"+#ym0p\"F,7$$\"+0n:x%)F0$\"+Nw())z\"F,7$$\"+5>m^\"*F0 $\"+l=CO>F,7$$\"+5X\"*)[*F0$\"+4\"\\S-#F,7$$\"+:r;E)*F0$\"+=X_L@F,7$$ \"+s>M;5F,$\"+PDGtAF,7$$\"+Ks1]5F,$\"+5SrLCF,7$$\"+sr><6F,$\"+m^s'o#F, 7$$\"+7rK%=\"F,$\"+fH(=%GF,7$$\"+_qX^7F,$\"+->8YHF,7$$\"+\"*pe=8F,$\"+ G`!)>IF,7$$\"+Q]#3Q\"F,$\"+r!4%oIF,7$$\"+'3jIW\"F,$\"+(f(e,JF,7$$\"+5@ =u9F,$\"+*z(*H6$F,7$$\"+M6I0:F,$\"+_4:@JF,7$$\"+e,UO:F,$\"+Rp8EJF,7$$ \"+\"=Rvc\"F,$\"+)e3!GJF,7$$\"+G6w*f\"F,$\"+O^oEJF,7$$\"+uI)>j\"F,$\"+ #fG?7$F,7$$\"+?]?k;F,$\"+ki)R6$F,7$$\"+npU'p\"F,$\"+%ejC5$F,7$$\"+g3(3 w\"F,$\"+$)=MoIF,7$$\"+`ZJD=F,$\"+#>ow,$F,7$$\"+?F'>*=F,$\"+UZvVHF,7$$ \"+'o5'e>F,$\"+UaORGF,7$$\"+_'e_-#F,$\"+siA%o#F,7$$\"+>m!>4#F,$\"+k0$> V#F,7$$\"+KP7D@F,$\"+Vk'QF#F,7$$\"+W3Me@F,$\"+7m&e8#F,7$$\"+dzb\">#F,$ \"+HONF?F,7$$\"+q]xCAF,$\"+.E;S>F,7$$\"+'H47H#F,$\"+o:k.=F,7$$\"+ANkdB F,$\"+/g(fp\"F,7$$\"+c]J%\\#F,$\"+W'\\4_\"F,7$$\"+*e')4j#F,$\"+_;Y!Q\" F,7$$\"+]pO^FF,$\"+)eITF\"F,7$$\"+7turGF,$\"+G[ez6F,7$$\"+hoyUJF,$\"+: M!H***F07$$\"+D$R\\T$F,$\"+g\"*4Y&)F07$$\"+`'3sn$F,$\"+&4!3[uF07$$\"+G VP:RF,$\"+?dR$o'F07$$\"+_jd)>%F,$\"+l]&f/'F07$$\"+$)4`=VF,$\"+:6^heF07 $$\"+9c[QWF,$\"+&\\,ms&F07$$\"+m8-yXF,$\"+0<2JcF07$$\"+>rb`^\"F,7$$\"+:hpbqF,$\"+/%R$z; F,7$$\"+57(H7(F,$\"+***o\\y\"F,7$$\"++jC!>(F,$\"+nJZ<>F,7$$\"+XQ)QA(F, $\"+Ce1,?F,7$$\"+!R@vD(F,$\"+vb6/@F,7$$\"+S*e6H(F,$\"+VFkNAF,7$$\"+&[' zCtF,$\"+LIi$R#F,7$$\"+gUqdtF,$\"+iolSDF,7$$\"+S?h!R(F,$\"+[0YdEF,7$$ \"+:)>NU(F,$\"+o)z\"[FF,7$$\"+!fFkX(F,$\"++pg?GF,7$$\"+XJCAvF,$\"+mYbH HF,7$$\"+)pe!)e(F,$\"+l,t1IF,7$$\"+I'QJF,7$$\"+g %Q4\"yF,$\"+6G1DJF,7$$\"+D%yF%yF,$\"+F^#y7$F,7$$\"+!GJ\"yyF,$\"+iR4FJF ,7$$\"+IT[8zF,$\"+I_NAJF,7$$\"+&)p$)[zF,$\"+MWa8JF,7$$\"+S)*=%)zF,$\"+ im`+JF,7$$\"+Xb*[0)F,$\"+$R^51$F,7$$\"+`7gD\")F,$\"+I<-,IF,7$$\"+vM8*= )F,$\"+aC![#HF,7$$\"++dm_#)F,$\"+K$f$=GF,7$$\"+?z>;$)F,$\"+7+.hEF,7$$ \"+W,tz$)F,$\"+M[.5CF,7$$\"+Xsk8%)F,$\"+Rmj\\AF,7$$\"+]VcZ%)F,$\"+=*GT 6#F,7$$\"+b9[\"[)F,$\"+S\\A3?F,7$$\"+g&)R:&)F,$\"+oNwA>F,7$$\"+qFB$e)F ,$\"+-I-)y\"F,7$$\"+xp1^')F,$\"+!Rj5o\"F,7$$\"+DF+u()F,$\"+g$4\\_\"F,7 $$\"+w%Qp*))F,$\"+Et&oR\"F,7$$\"+?(R8.*F,$\"+/=!oF\"F,7$$\"+o4ul\"*F,$ \"+SXer6F,7$$\"+lJm=%*F,$\"+kXk.5F,7$$\"+P(RIo*F,$\"+&Q,yh)F07$$\"+gh^ T**F,$\"+qR'z^(F07$$\"+-<@@5!\")$\"+v=EYmF07$$\"+\"yts/\"Fc\\m$\"+lv&= 1'F07$$\"+,**fg5Fc\\m$\"+gl%e&eF07$$\"+@g#R2\"Fc\\m$\"+5%Q4r&F07$$\"+% zTr3\"Fc\\m$\"+qNlEcF07$$\"+nvN+6Fc\\m$\"+5u(4g&F07$$\"+!\\,D6\"Fc\\m$ \"+gi*)GcF07$$\"+8akC6Fc\\m$\"+07J1dF07$$\"+>PcQ6Fc\\m$\"+N$)[ceF07$$ \"+D?[_6Fc\\m$\"+qjKtgF07$$\"+A%zt<\"Fc\\m$\"+lz4KmF07$$\"+T_#R?\"Fc\\ m$\"+:kOzuF07$$\"+xHLH7Fc\\m$\"+ILaZ&)F07$$\"+fqjc7Fc\\m$\"+b)*******F 0-%'COLOURG6&%$RGBG$\"#5!\"\"F(F(-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6 $;F($\"+iqjc7Fc\\m;F($\"#MF]am" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 106 "We start by constructing a discrete solu tion and make a numerical comparison with the analytical solution." }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 387 "de := diff(y(x),x)=4*y(x)*c os(x)/(4+3*sin(2*y(x)));\nic := y(0)=1;\npts := desolveRK(\{de,ic\},y( x),x=0..4*Pi,method=rk67b,output=points):\ncat(`The discrete solution \+ has `,convert(nops(pts),string),` points`);\np1 := plot(pts,style=line ,color=grey):\np2 := plot([pts$2],style=point,symbol=[diamond,cross],c olor=[black,coral]):\nplots[display]([p1,p2],view=[0..4*Pi,0..3.4],lab els=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6 $-%\"yG6#%\"xGF,,$**\"\"%\"\"\"F)F0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sinG6# ,$*&\"\"#F0F)F0F0F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG /-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%EThe~discrete ~solution~has~159~pointsG" }}{PARA 13 "" 1 "" {GLPLOT2D 677 275 275 {PLOTDATA 2 "6'-%'CURVESG6%7[u7$$\"\"!F)$\"\"\"F)7$$\"3-+++++++5!#>$\" 3++++\"ppf+\"!#<7$$\"3y**************fF/$\"3/+++d#el.\"F27$$\"3!****** fU8;O#!#=$\"3'*******fj*[:\"F27$$\"3C+++LSQ_PF;$\"3-+++utxh7F27$$\"3)) *****41-P&\\F;$\"3#******\\^MiO\"F27$$\"3y*****zZ(etfF;$\"3/+++@Ijm9F2 7$$\"3\\+++!Gz%GoF;$\"31+++O0Gi:F27$$\"3*)********=_UvF;$\"3%******R,) p`;F27$$\"3U+++'RX\"\\\")F;$\"36+++05cV>F27$$\"3H+++W$)*=L*F;$\" 3++++wN+\")>F27$$\"3Y*****z$)zKa*F;$\"37+++D!*)*R?F27$$\"38+++)Q:ns*F; $\"3!)*****\\J?%)4#F27$$\"34+++B$>7#**F;$\"3?+++].ip@F27$$\"3-+++F#*z0 5F2$\"3A+++'eghA#F27$$\"3++++@x\"p,\"F2$\"3;+++?N$fF#F27$$\"3*******p[ ?%G5F2$\"3\"******41Z,L#F27$$\"30+++^M#*Q5F2$\"3=+++sDr!Q#F27$$\"3/+++ P&e$\\5F2$\"30+++EiRICF27$$\"3)******>/c/1\"F2$\"3!)******ec5\"[#F27$$ \"3)******z))yG2\"F2$\"3.+++oG,MDF27$$\"3#******p(ed(3\"F2$\"3')****** Hmm!f#F27$$\"3*)*****45on5\"F2$\"3-+++[xSbEF27$$\"3)******RF&eM6F2$\"3 #)*****f6QQt#F27$$\"3++++fyZi6F2$\"3')*****H2c&)z#F27$$\"3!******R))H; >\"F2$\"3)********\\_^&GF27$$\"36+++n;wC7F2$\"3.+++)>v!4HF27$$\"3!**** **R;NLE\"F2$\"3?+++=&e5'HF27$$\"3'******4xA\"48F2$\"3,+++(3\")3,$F27$$ \"3%******H^xZO\"F2$\"3?+++1LXdIF27$$\"3-+++B***eV\"F2$\"3=+++Qp[)4$F2 7$$\"3-+++Md]7$F27$$\"34+++3mC@;F2$\"3@+++#)G&R7$F2 7$$\"3%******\\vO$=F2$\"3/+++)>eL *GF27$$\"3)******po\"pk>F2$\"3&)******y/yFGF27$$\"31+++'pEo*>F2$\"3')* ****pfc)eFF27$$\"3++++a?WH?F2$\"3'******R$>)=n#F27$$\"3z*****R5,]/#F2$ \"3$******H'oIAEF27$$\"3A+++fhbh?F2$\"3))*****\\*=TiDF27$$\"3A+++oB,!3 #F2$\"3%)*****pZug[#F27$$\"3%)*****fJ\"o\"4#F2$\"3>+++w\\)HV#F27$$\"31 +++#\\IF5#F2$\"3#******piTEN@F2$\"3>++ +'yc%GAF27$$\"3)*******e&*pY@F2$\"3?+++%*[j!=#F27$$\"3')*****>zX&f@F2$ \"3=+++0:WJ@F27$$\"3%******pid\\<#F2$\"3!******p6T$y?F27$$\"3#*******4 ([e>#F2$\"3\"******HCx],#F27$$\"3>+++4!zAA#F2$\"3++++#)R:Y>F27$$\"3;++ +'\\zvW3H#F2$\"3,+++'*fH/=F27$$\"3* ********oE=M#F2$\"3&******fd'y>` [\"F27$$\"36+++z0i3EF2$\"3'******p&\\!=S\"F27$$\"32+++9&*z-FF2$\"31+++ tHV:8F27$$\"31+++fWA5GF2$\"3.+++6^gE7F27$$\"39+++J2&>$HF2$\"3++++jO&f8 \"F27$$\"3'*******fF>pIF2$\"32+++)zQV/\"F27$$\"3$******\\/LNA$F2$\"3p* ****>%yzG&*F;7$$\"3#)*******4*Q(R$F2$\"3,+++v3hH')F;7$$\"3?+++\\zM&f$F 2$\"3m******R-AhxF;7$$\"3\"******H=D$HQF2$\"3d*****pUTvj&F;7$$\"3'******z+=Lz%F2$\"3:+++L?#=h&F;7$$ \"3!)*****\\9En,&F2$\"3Y+++YD=cdF;7$$\"3')******))\\u\\_F2$\"3%******* 3\\/)3'F;7$$\"3o******4;xsaF2$\"3[+++lWh%e'F;7$$\"3u*****><\"*[r&F2$\" 3g******R!y.L(F;7$$\"3O+++lYrjfF2$\"3k*****H0jFL)F;7$$\"31+++y%[e?'F2$ \"3M+++L&QWb*F;7$$\"3g*****fvvWQ'F2$\"3/+++sZxi5F27$$\"3q*****pGX;a'F2 $\"3!******Haf6<\"F27$$\"3K+++J%f!ymF2$\"3/+++L%)*zF\"F27$$\"3S+++DGK& z'F2$\"33+++:a!>Q\"F27$$\"3I+++Y(fY*oF2$\"3#******4^(f\"[\"F27$$\"3C++ +GZ\"y(pF2$\"35+++ea_w:F27$$\"3M+++daKZqF2$\"31+++q.Xn;F27$$\"3c***** \\?mn5(F2$\"3'******48Lwv\"F27$$\"3o*****zOC'orF2$\"37+++z3$3(=F27$$\" 3g*****R`eT>(F2$\"3.+++ziVE>F27$$\"30+++p*o\">sF2$\"3))*****fYi$))>F27 $$\"3S+++=&z)RsF2$\"3/+++[06Z?F27$$\"3O+++:0*zD(F2$\"3@+++RMt0@F27$$\" 3A+++\"RDrF(F2$\"3#)*****\\f@o<#F27$$\"39+++1c7!H(F2$\"3-+++o.7JAF27$$ \"3:+++Bq<,tF2$\"3))*****zc(*3G#F27$$\"3d******fX`7tF2$\"3=+++&*4gMBF2 7$$\"3\"******Rv&*HK(F2$\"3A+++3(y\\Q#F27$$\"3-+++l7[b[#F27$$\"3o*****p\")=sN(F2$\"3 @+++u()pQDF27$$\"3e*****R\\#=stF2$\"3%)*****\\w1ef#F27$$\"3')*****\\az >R(F2$\"3)******4X*ohEF27$$\"3h*****z2$e>uF2$\"34+++z5UQFF27$$\"3i**** *\\VitW(F2$\"36+++gY8-GF27$$\"3/+++c^rwuF2$\"3-+++6y^eGF27$$\"3G+++Jk8 5vF2$\"3\"******Hi6B\"HF27$$\"3')*****Rd&4\\vF2$\"3)******>fxT'HF27$$ \"3%)*****R6(R&f(F2$\"32+++h?%Q,$F27$$\"3'******4v$y^wF2$\"3%)*****pVc ,1$F27$$\"3u*****zAVUs(F2$\"3*******R!yt+JF27$$\"3w*****zk%[[%o8#)F2$\"33+++z!**z)GF27$$ \"3o******z5o]#)F2$\"3<+++klHAGF27$$\"3g+++P-b#G)F2$\"3!******fK!y_FF2 7$$\"3$3++q+-[J)F2$\"3#******>/3`m#F27$$\"3?******>rmF$)F2$\"3A+++q51C EF27$$\"3^+++hEDW$)F2$\"3!)*****R%\\HkDF27$$\"3u*****4>$zi$)F2$\"33+++ 'y`y[#F27$$\"3k*****fZ&fu$)F2$\"3%******zo_UV#F27$$\"3#3++!Ghl&Q)F2$\" 3))******3rm\"Q#F27$$\"3W+++>p#oR)F2$\"3:+++=()*yK#F27$$\"3<*****4_nuS )F2$\"3=+++ieuxAF27$$\"39*****493#=%)F2$\"3!)*****p41&HAF27$$\"3'***** *4h@'H%)F2$\"3#)******eHp\"=#F27$$\"3u+++woUU%)F2$\"3$)*****zV_D8#F27$ $\"3%)*****4KjxX)F2$\"3'******p)zdz?F27$$\"3O*****p3a%y%)F2$\"3A+++]mr ;?F27$$\"3j*****f2:\\])F2$\"3#******R3$[Z>F27$$\"3N*****H\"fHM&)F2$\"3 3+++'o.8)=F27$$\"3W*****4tcId)F2$\"3%******pRZg!=F27$$\"3R*****4?tUi)F 2$\"3)******H:B4s\"F27$$\"3++++&o)yw')F2$\"35+++&pU^k\"F27$$\"32+++b$3 zt)F2$\"3/+++t+6n:F27$$\"3&)******=*Q'3))F2$\"33+++Q#3m[\"F27$$\"3W*** **z'eU!*))F2$\"33+++>/9.9F27$$\"3i******HZS%)*)F2$\"3*******z#4\"oJ\"F 27$$\"3%)*****f]8;4*F2$\"33+++nt,G7F27$$\"3d+++Ci58#*F2$\"3(******pb)Q P6F27$$\"3!)*****4_$4]$*F2$\"3++++t3yX5F27$$\"3E+++w%\\T]*F2$\"3`***** H#Q4V&*F;7$$\"3'******H4swn*F2$\"3H+++IlaV')F;7$$\"3_*****z&H>v)*F2$\" 3)*******Q%eXx(F;7$$\"3-+++X6%3,\"!#;$\"3W+++7/lZpF;7$$\"3.+++_G^Q5Ffi m$\"3=+++@$o6B'F;7$$\"3++++HxHh5Ffim$\"3w*****>%=vYeF;7$$\"3%******Rs* e%3\"Ffim$\"3<+++`7NQcF;7$$\"30+++@*yu5\"Ffim$\"3++++HHO6cF;7$$\"31+++ Ia()H6Ffim$\"3O+++J-+bdF;7$$\"31+++*\\'>`6Ffim$\"3#******4*3G'3'F;7$$ \"3'******>*o\\v6Ffim$\"3E+++z%=?e'F;7$$\"3)*******RGp*>\"Ffim$\"3/+++ tyJEtF;7$$\"3$******RqHWA\"Ffim$\"33+++^p)4K)F;7$$\"3/+++zBx[7Ffim$\"3 u*****pCKra*F;7$$\"3++++hqjc7FfimF*-%'COLOURG6&%$RGBG$\")=THv!\")Fb]nF b]n-%&STYLEG6#%%LINEG-F$6&F&-F_]n6&Fa]nF)F)F)-%'SYMBOLG6#%(DIAMONDG-Ff ]n6#%&POINTG-F$6&F&-F_]n6&Fa]n$\"*++++\"Fd]n$\")AR!)\\Fd]nF(-F^^n6#%&C ROSSGFa^n-%+AXESLABELSG6%%\"xG%%y(x)G-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F( $\"0#fVhqjc7!#8;F($\"#M!\"\"" 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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continuous solutio n can be constructed over the interval from " }{XPPEDIT 18 0 "x=0" "6# /%\"xG\"\"!" }{TEXT -1 4 " to " }{XPPEDIT 18 0 "x = 4;" "6#/%\"xG\"\"% " }{TEXT -1 21 " using the procedure " }{TEXT 0 9 "desolveRK" }{TEXT -1 20 " with the options ''" }{TEXT 262 12 "method=rk67b" }{TEXT -1 9 "'' and ''" }{TEXT 262 15 "output=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 262 "d e := diff(y(x),x)=4*y(x)*cos(x)/(4+3*sin(2*y(x)));\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},y(x),x=0..4*Pi,method=rk67b,output=rkinterp); \nplot('gn1'(x),x=0..4*Pi,0..3.4,labels=[`x`,`y(x)`],\n \+ color=COLOR(RGB,0,.7,.5),thickness=2,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"%\" \"\"F)F0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sinG6#,$*&\"\"#F0F)F0F0F0F0!\"\"F 0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }} {PARA 13 "" 1 "" {GLPLOT2D 736 244 244 {PLOTDATA 2 "6'-%'CURVESG6#7cr7 $$\"\"!F)$\"\"\"F)7$$\"+r66RF!#5$\"+CQh#=\"!\"*7$$\"+iTvIRF/$\"+*p*\\w 7F27$$\"+arRA^F/$\"+^=+#Q\"F27$$\"+IV_ikF/$\"+DJz>:F27$$\"+.:l-yF/$\"+ \"ym0p\"F27$$\"+0n:x%)F/$\"+Mw())z\"F27$$\"+5>m^\"*F/$\"+m=CO>F27$$\"+ 5X\"*)[*F/$\"+4\"\\S-#F27$$\"+:r;E)*F/$\"+M;5F2$\"+PDGt AF27$$\"+Ks1]5F2$\"+4SrLCF27$$\"+sr><6F2$\"+n^s'o#F27$$\"+7rK%=\"F2$\" +eH(=%GF27$$\"+_qX^7F2$\"+.>8YHF27$$\"+\"*pe=8F2$\"+F`!)>IF27$$\"+Q]#3 Q\"F2$\"+s!4%oIF27$$\"+'3jIW\"F2$\"+)f(e,JF27$$\"+5@=u9F2$\"+)z(*H6$F2 7$$\"+M6I0:F2$\"+_4:@JF27$$\"+e,UO:F2$\"+Pp8EJF27$$\"+\"=Rvc\"F2$\"+!f 3!GJF27$$\"+G6w*f\"F2$\"+N^oEJF27$$\"+uI)>j\"F2$\"+$fG?7$F27$$\"+?]?k; F2$\"+ki)R6$F27$$\"+npU'p\"F2$\"+'ejC5$F27$$\"+g3(3w\"F2$\"+$)=MoIF27$ $\"+`ZJD=F2$\"+\">ow,$F27$$\"+?F'>*=F2$\"+UZvVHF27$$\"+'o5'e>F2$\"+UaO RGF27$$\"+_'e_-#F2$\"+riA%o#F27$$\"+>m!>4#F2$\"+j0$>V#F27$$\"+KP7D@F2$ \"+Wk'QF#F27$$\"+W3Me@F2$\"+7m&e8#F27$$\"+dzb\">#F2$\"+HONF?F27$$\"+q] xCAF2$\"+.E;S>F27$$\"+'H47H#F2$\"+o:k.=F27$$\"+ANkdBF2$\"+/g(fp\"F27$$ \"+c]J%\\#F2$\"+V'\\4_\"F27$$\"+*e')4j#F2$\"+^;Y!Q\"F27$$\"+]pO^FF2$\" +)eITF\"F27$$\"+7turGF2$\"+G[ez6F27$$\"+hoyUJF2$\"+;M!H***F/7$$\"+D$R \\T$F2$\"+j\"*4Y&)F/7$$\"+`'3sn$F2$\"+(4!3[uF/7$$\"+GVP:RF2$\"+@dR$o'F /7$$\"+_jd)>%F2$\"+j]&f/'F/7$$\"+$)4`=VF2$\"+96^heF/7$$\"+9c[QWF2$\"+% \\,ms&F/7$$\"+m8-yXF2$\"+1<2JcF/7$$\"+>rb`^\"F27$$\"+:hpbqF2$\"+/%R$z;F27$$\"+57(H7(F2 $\"+***o\\y\"F27$$\"++jC!>(F2$\"+nJZ<>F27$$\"+XQ)QA(F2$\"+Be1,?F27$$\" +!R@vD(F2$\"+ub6/@F27$$\"+S*e6H(F2$\"+VFkNAF27$$\"+&['zCtF2$\"+KIi$R#F 27$$\"+gUqdtF2$\"+holSDF27$$\"+S?h!R(F2$\"+[0YdEF27$$\"+:)>NU(F2$\"+o) z\"[FF27$$\"+!fFkX(F2$\"++pg?GF27$$\"+XJCAvF2$\"+mYbHHF27$$\"+)pe!)e(F 2$\"+m,t1IF27$$\"+I'QJF27$$\"+g%Q4\"yF2$\"+5G1DJF 27$$\"+D%yF%yF2$\"+E^#y7$F27$$\"+!GJ\"yyF2$\"+hR4FJF27$$\"+IT[8zF2$\"+ H_NAJF27$$\"+&)p$)[zF2$\"+MWa8JF27$$\"+S)*=%)zF2$\"+km`+JF27$$\"+Xb*[0 )F2$\"+\"R^51$F27$$\"+`7gD\")F2$\"+I<-,IF27$$\"+vM8*=)F2$\"+bC![#HF27$ $\"++dm_#)F2$\"+J$f$=GF27$$\"+?z>;$)F2$\"+6+.hEF27$$\"+W,tz$)F2$\"+M[. 5CF27$$\"+Xsk8%)F2$\"+Qmj\\AF27$$\"+]VcZ%)F2$\"+<*GT6#F27$$\"+b9[\"[)F 2$\"+S\\A3?F27$$\"+g&)R:&)F2$\"+oNwA>F27$$\"+qFB$e)F2$\"+-I-)y\"F27$$ \"+xp1^')F2$\"+*Qj5o\"F27$$\"+DF+u()F2$\"+h$4\\_\"F27$$\"+w%Qp*))F2$\" +Et&oR\"F27$$\"+?(R8.*F2$\"+/=!oF\"F27$$\"+o4ul\"*F2$\"+SXer6F27$$\"+l Jm=%*F2$\"+kXk.5F27$$\"+P(RIo*F2$\"+'Q,yh)F/7$$\"+gh^T**F2$\"+pR'z^(F/ 7$$\"+-<@@5!\")$\"+t=EYmF/7$$\"+\"yts/\"Fc\\m$\"+lv&=1'F/7$$\"+,**fg5F c\\m$\"+il%e&eF/7$$\"+@g#R2\"Fc\\m$\"+7%Q4r&F/7$$\"+%zTr3\"Fc\\m$\"+sN lEcF/7$$\"+nvN+6Fc\\m$\"+4u(4g&F/7$$\"+!\\,D6\"Fc\\m$\"+di*)GcF/7$$\"+ 8akC6Fc\\m$\"+27J1dF/7$$\"+>PcQ6Fc\\m$\"+P$)[ceF/7$$\"+D?[_6Fc\\m$\"+p jKtgF/7$$\"+A%zt<\"Fc\\m$\"+jz4KmF/7$$\"+T_#R?\"Fc\\m$\"+8kOzuF/7$$\"+ xHLH7Fc\\m$\"+JLaZ&)F/7$$\"+fqjc7Fc\\m$\"+^)*******F/-%&COLORG6&%$RGBG F($\"\"(!\"\"$\"\"&F]am-%*THICKNESSG6#\"\"#-%+AXESLABELSG6$%\"xG%%y(x) G-%%VIEWG6$;F($\"+iqjc7Fc\\m;F($\"#MF]am" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 139 "The first error graph is plott ed using standard 10 digit arithmetic for the evaluation of the proced ure which gives the numerical solution." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "plot('gn1'(x)-g(x),x=0. .4*Pi,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7cin7$$\"\"!F)F(7$$\"+'eb&p8!#5F(7$$\"+r66R FF-F(7$$\"+e))e8GF-F(7$$\"+Wl1))GF-F(7$$\"+JUaiHF-F(7$$\"+=>-PIF-$\"\" \"!\"*7$$\"+0'*\\6JF-F(7$$\"+#Hxf=$F-F(7$$\"+z\\XgKF-F(7$$\"+mE$\\L$F- F(7$$\"+S!))Q[$F-F(7$$\"+9M%Gj$F-F(7$$\"+,6K2PF-F(7$$\"+)y)z\"y$F-F=7$ $\"+vkFcQF-$!\"\"F?7$$\"+iTvIRF-Fen7$$\"+\\=B0SF-F(7$$\"+O&4(zSF-F(7$$ \"+Bs=aTF-F(7$$\"+5\\mGUF-Fen7$$\"+(fUJI%F-F(7$$\"+%G?wP%F-F(7$$\"+rz4 _WF-F(7$$\"+ecdEXF-F(7$$\"+K5`vYF-F(7$$\"+1k[C[F-F(7$$\"+$4k*)*[F-Fen7 $$\"+!yTM(\\F-F(7$$\"+l%>z/&F-F(7$$\"+arRA^F-F=7$$\"++^:1_F-Fen7$$\"+] I\"**G&F-Fen7$$\"++5nt`F-Fen7$$\"+X*GuX&F-F(7$$\"+!*o=TbF-F(7$$\"+S[% \\i&F-Fen7$$\"+!z-(3dF-F=7$$\"+S2Y#z&F-F(7$$\"+!p=i(eF-Fen7$$\"+Sm(*ff F-Fen7$$\"+!fMP/'F-Fen7$$\"+ND\\FhF-F(7$$\"+![]7@'F-F(7$$\"+I%3]H'F-F= 7$$\"+!Qm(yjF-Fen7$$\"+IV_ikF-F=7$$\"+!G#GYlF-F(7$$\"+D-/ImF-Fen7$$\"+ q\")z8nF-Fen7$$\"+?hb(z'F-F(7$$\"+??2lpF-F(7$$\"+:zeKrF-F(7$$\"+geM;sF -Fen7$$\"+5Q5+tF-F=7$$\"+g<'QQ(F-F=7$$\"+5(>wY(F-Fen7$$\"+gwP^vF-F(7$$ \"+0c8NwF-F=7$$\"+bN*)=xF-F=7$$\"+.:l-yF-Fen7$$\"+bY'p)yF-F(7$$\"+0yFr zF-F(7$$\"+b4fb!)F-F(7$$\"+0T!*R\")F-F(7$$\"+bs@C#)F-F=7$$\"+0/`3$)F-F (7$$\"+bN%GR)F-F(7$$\"+0n:x%)F-Fen7$$\"+g)p9c)F-F(7$$\"+5IyX')F-Fen7$$ \"+gh4I()F-F(7$$\"+5$4W\"))F-F=7$$\"+5c.$)*)F-F=7$$\"+5>m^\"*F-F=7$$\" +g](fB*F-F=7$$\"+5#)G?$*F-$!\"#F?7$$\"+g8g/%*F-$\"\"#F?7$$\"+5X\"*)[*F -F(7$$\"+gwAt&*F-F=7$$\"+53ad'*F-F=7$$\"+gR&=u*F-Fen7$$\"+:r;E)*F-Fen7 $$\"+q-[5**F-F(7$$\"+?Mz%***F-F(7$$\"+d1\"z+\"F?F(7$$\"+s>M;5F?F(7$$\" +(GtZ-\"F?F(7$$\"+-Y?L5F?F(7$$\"+M\"F? F(7$$\"+9gq\\8F?F=7$$\"+EbEl8F?F=7$$\"+Q]#3Q\"F?F=7$$\"+%z/')Q\"F?F=7$ $\"+]XQ'R\"F?F^z7$$\"+1V;/9F?F(7$$\"+iS%>T\"F?F(7$$\"+=Qs>9F?Fen7$$\"+ uN]F9F?F(7$$\"+ILGN9F?Fen7$$\"+'3jIW\"F?F=7$$\"+UG%3X\"F?F=7$$\"+)fA'e 9F?Fcz7$$\"+aBSm9F?F(7$$\"+5@=u9F?Fen7$$\"+m='>[\"F?Fen7$$\"+A;u*[\"F? F(7$$\"+y8_(\\\"F?F=7$$\"+M6I0:F?F(7$$\"+!*338:F?F(7$$\"+Y1'3_\"F?F=7$ $\"+-/kG:F?Fen7$$\"+e,UO:F?F^z7$$\"+9**>W:F?F=7$$\"+q'z>b\"F?F(7$$\"+E %f(f:F?F(7$$\"+\"=Rvc\"F?Fcz7$$\"+oYfv:F?Fen7$$\"+a,l$e\"F?F(7$$\"+Tcq \"f\"F?Fen7$$\"+G6w*f\"F?Fen7$$\"+9m\"yg\"F?F=7$$\"+,@(eh\"F?F=7$$\"+) eFRi\"F?F^z7$$\"+uI)>j\"F?F=7$$\"+g&Q+k\"F?F^z7$$\"+ZS4[;F?F(7$$\"+M& \\hl\"F?Fen7$$\"+?]?k;F?F(7$$\"+20Es;F?F(7$$\"+%*fJ!o\"F?F^z7$$\"+![r$ )o\"F?Fen7$$\"+npU'p\"F?Fcz7$$\"+aC[/%=F?Fen7$$\"+SxI]=F?F=7$$\"+O (Q'e=F?F=7$$\"+K(pp'=F?Fen7$$\"+G2Iv=F?F(7$$\"+C*= F?F(7$$\"+;PH+>F?Fen7$$\"+7Zi3>F?Fen7$$\"+3d&p\">F?F(7$$\"+.nGD>F?Fen7 $$\"+)pF?F=7$$\"+%p[>%>F?F^z7$$\"+!pz-&>F?Fen7$$\"+'o5'e>F?F(7$$\" +#oTp'>F?F(7$$\"+yEFv>F?Fen7$$\"+uOg$)>F?F=7$$\"+pY$>*>F?F^z7$$\"+kcE+ ?F?Fen7$$\"+gmf3?F?F=7$$\"+cw#p,#F?Fen7$$\"+_'e_-#F?Fen7$$\"+['*eL?F?F en7$$\"+W1#>/#F?Fen7$$\"+S;D]?F?Fen7$$\"+OEee?F?F=7$$\"+KO\"p1#F?F(7$$ \"+GYCv?F?Fen7$$\"+Ccd$3#F?F^z7$$\"+>m!>4#F?Fen7$$\"+)*3@+@F?F(7$$\"+w ^^3@F?F^z7$$\"+a%>o6#F?Fen7$$\"+KP7D@F?F=7$$\"+5!GM8#F?F(7$$\"+)GK<9#F ?F(7$$\"+ml.]@F?Fen7$$\"+W3Me@F?F(7$$\"+dzb\">#F?F(7$$\"+q]xCAF?F(7$$ \"+'H47H#F?F(7$$\"+ANkdBF?F(7$$\"+kusuBF?F(7$$\"+19\"=R#F?F(7$$\"+xLN+ CF?F(7$$\"+[`*)3CF?F(7$$\"+=tVjt#F? F(7$$\"+]pO^FF?F(7$$\"+Jrb6GF?F(7$$\"+7turGF?F(7$$\"+*>2&RHF?F(7$$\"+' 3ns+$F?F(7$$\"+eq?CIF?F(7$$\"+Iq9TIF?F(7$$\"+;qh\\IF?F(7$$\"+-q3eIF?F( 7$$\"+))pbmIF?F(7$$\"+up-vIF?Fen7$$\"+gp\\$3$F?Fen7$$\"+Yp'>4$F?F(7$$ \"+KpV+JF?Fen7$$\"+=p!*3JF?F=7$$\"+/pPF-7$$\"+x\\#3@$F?F(7$$\"+$4j)yKF?$FfnF-7$$\"+AE( eH$F?Fgjm7$$\"+^@)GJ$F?Fgjm7$$\"+;pQ@LF?F`jm7$$\"+!o\"*)HLF?F`jm7$$\"+ WkRQLF?F(7$$\"+47!pM$F?F(7$$\"+ufSbLF?Fgjm7$$\"+Q2\"RO$F?F(7$$\"+-bTsL F?F(7$$\"+n-#4Q$F?$F_zF-7$$\"+K]U*Q$F?Ff\\n7$$\"+'zHzR$F?$FdzF-7$$\"+g XV1MF?F`jm7$$\"+D$R\\T$F?$\"\"$F-7$$\"+\"*HsZMF?F`jm7$$\"+dm]![$F?Fgjm 7$$\"+B.H8NF?F(7$$\"+*)R2YNF?F]]n7$$\"+@8k6OF?F]]n7$$\"+`'3sn$F?F]]n7$ $\"+i$zpq$F?F(7$$\"+s+vOPF?Fgjm7$$\"+\\F>WPF?Ff\\n7$$\"+Eaj^PF?Fgjm7$$ \"+/\"y!fPF?F(7$$\"+\"y?lw$F?Ff\\n7$$\"+OhS\"y$F?Fgjm7$$\"+!\\\"H'z$F? F(7$$\"+oTt.QF?Fgjm7$$\"+Xo<6QF?F`jm7$$\"+A&>'=QF?Ff\\n7$$\"++A1EQF?F` jm7$$\"+x[]LQF?Fgjm7$$\"+av%4%QF?Ff\\n7$$\"+K-R[QF?F`jm7$$\"+4H$e&QF?F (7$$\"+'evK'QF?F`jm7$$\"+k#=2(QF?F(7$$\"+T4;yQF?F`jm7$$\"+=Og&)QF?Fgjm 7$$\"+'HYI*QF?Fgjm7$$\"+t*)[+RF?F]]n7$$\"+];$z!RF?$!\"$F-7$$\"+GVP:RF? F`jm7$$\"+\"RCU#RF?F(7$$\"+aW2LRF?F]]n7$$\"+=X#>%RF?F(7$$\"+\"eu2&RF?F `jm7$$\"+WYifRF?Fgjm7$$\"+3ZZoRF?F`jm7$$\"+rZKxRF?F]]n7$$\"+M[<')RF?Ff \\n7$$\"+(*[-&*RF?F`jm7$$\"+g\\(Q+%F?F]]n7$$\"+C]s7SF?F`jm7$$\"+(3v:-% F?F]]n7$$\"+]^UISF?F`jm7$$\"+9_FRSF?F(7$$\"+x_7[SF?F(7$$\"+S`(p0%F?F`j m7$$\"+$fvB4%F?F`jm7$$\"+YexFTF?F`jm7$$\"+4fiOTF?F(7$$\"+sfZXTF?F(7$$ \"+OgKaTF?F`jm7$$\"+*4wJ;%F?F`jm7$$\"+ih-sTF?Fd]n7$$\"+Ei(3=%F?F`jm7$$ \"+*GE(*=%F?Fgjm7$$\"+_jd)>%F?Ff\\n7$$\"+;N21UF?Fgjm7$$\"+\"oqN@%F?Ff \\n7$$\"+Yy1@UF?F(7$$\"+5]cGUF?F(7$$\"+u@1OUF?F]]n7$$\"+R$fNC%F?Ff\\n7 $$\"+/l0^UF?F]]n7$$\"+oObeUF?Ff\\n7$$\"+K30mUF?F`jm7$$\"+(*zatUF?Ff\\n 7$$\"+i^/\"G%F?Ff\\n7$$\"+EBa)G%F?F`jm7$$\"+!\\RgH%F?Ff\\n7$$\"+am`.VF ?F]cn7$$\"+=Q.6VF?Fgjm7$$\"+$)4`=VF?Fgjm7$$\"+)H3&yVF?Fgjm7$$\"+9c[QWF ?Fgjm7$$\"+_&pLZ%F?F(7$$\"+!\\`#3XF?F]]n7$$\"+uW(p^%F?Fgjm7$$\"+fapDXF ?Fd]n7$$\"+WkTMXF?F(7$$\"+Gu8VXF?Fgjm7$$\"+7%e=b%F?Ff\\n7$$\"+(Rz0c%F? Ff\\n7$$\"+#Q+$pXF?F(7$$\"+m8-yXF?F`jm7$$\"+]Bu'e%F?Ff\\n7$$\"+NLY&f%F ?F]]n7$$\"+?V=/YF?Ff\\n7$$\"+/`!Hh%F?F]]n7$$\"+)GE;i%F?Fd]n7$$\"+tsMIY F?F`jm7$$\"+e#o!RYF?F(7$$\"+U#*yZYF?Ff\\n7$$\"+E-^cYF?Ff\\n7$$\"+67BlY F?F]]n7$$\"+'>_Rn%F?F(7$$\"+!=tEo%F?Ff\\n7$$\"+lTR\"p%F?F`jm7$$\"+]^6+ ZF?F]]n7$$\"+Mh$)3ZF?F`jm7$$\"+>rb5[F?F]]n7$$\"+d7\"z\"[F?Fgjm7$$\"+13j D[F?Fgjm7$$\"+b.NL[F?Fgjm7$$\"+/*p5%[F?Fgjm7$$\"+`%*y[[F?F]]n7$$\"+-!4 l&[F?F]]n7$$\"+^&GU'[F?Fgjm7$$\"++\"[>([F?Ff\\n7$$\"+\\wmz[F?F]cn7$$\" +)>(Q()[F?F`jm7$$\"+Zn5&*[F?F`jm7$$\"+'HEG!\\F?F`jm7$$\"+#\\/P$\\F?F(7 $$\"+)o#ek\\F?Fgjm7$$\"+!z&4+^F?Fgjm7$$\"+)))3cB&F?Fgjm7$$\"+?RnV_F?Fg jm7$$\"+]*Q 3`F?Ff\\n7$$\"+5#fiJ&F?F(7$$\"+SUKC`F?Fgjm7$$\"+v#*QK`F?F(7$$\"+5VXS`F ?Ff\\n7$$\"+S$>&[`F?Ff\\n7$$\"+qVec`F?F(7$$\"+0%\\YO&F?F(7$$\"+SWrs`F? Fd]n7$$\"+q%z2Q&F?F`jm7$$\"++X%))Q&F?F`jm7$$\"+N&4pR&F?Fgjm7$$\"+qX(\\ S&F?F]]n7$$\"++'RIT&F?Fgjm7$$\"+IY5@aF?Fgjm7$$\"+l'p\"HaF?F(7$$\"+I(*H XaF?F(7$$\"+&zH9Y&F?F(7$$\"+I[\\paF?F]]n7$$\"+g)fvZ&F?F]]n7$$\"+!*[i&[ &F?Fgjm7$$\"+B**o$\\&F?Fgjm7$$\"+S\\5-bF?Ff\\n7$$\"+b*>0^&F?Fd]n7$$\"+ q\\$*=bF?F]]n7$$\"+&)*\\t_&F?F`jm7$$\"++]wNbF?Fgjm7$$\"+:+=WbF?F]]n7$$ \"+I]f_bF?F(7$$\"+X+,hbF?Fgjm7$$\"+0,n%f&F?F`jm7$$\"+l,LGcF?Fd]n7$$\"+ !=Xnj&F?Fgjm7$$\"+&>g^k&F?F]]n7$$\"+5_d`cF?Fgjm7$$\"+D-*>m&F?Ff\\n7$$ \"+S_SqcF?F(7$$\"+b-#)ycF?Ff\\n7$$\"+q_B(o&F?F(7$$\"+&G]cp&F?F(7$$\"+X .JHdF?Ff\\n7$$\"+4/(Hw&F?F]cn7$$\"+?!)pqdF?F]]n7$$\"+IcUydF?F(7$$\"+SK :'y&F?Ff\\n7$$\"+]3)Qz&F?Ff\\n7$$\"+g%3;!eF?Ff\\n7$$\"+qgL4eF?F]]n7$$ \"+!ojq\"eF?Ff\\n7$$\"+&H\"zCeF?Fd]n7$$\"+S)R'F?F(7$$\"+XF&oS'F?F=7$$\"+]2^:kF?F(7$$\"+!zuZ['F?F(7$$\"+M)Q Sb'F?F(7$$\"+&QLVh'F?F(7$$\"+SziumF?F(7$$\"+:_x/nF?F(7$$\"+!\\A\\t'F?F (7$$\"+Ih**\\nF?F(7$$\"+l(p]w'F?F(7$$\"+&e1Ex'F?F(7$$\"+0M9!y'F?F=7$$ \"+D-o(y'F?Fcz7$$\"+Uq@&z'F?Fen7$$\"+:qN.oF?Fen7$$\"+&)p\\6oF?F=7$$\"+ bpj>oF?F(7$$\"+DpxFoF?F(7$$\"+qo0WoF?F(7$$\"+5oLgoF?F(7$$\"+&p'*G*oF?F (7$$\"+!eca#pF?F(7$$\"+]lfLpF?F(7$$\"+?ltTpF?F(7$$\"+!\\w)\\pF?F(7$$\" +lk,epF?Fen7$$\"+Sk:mpF?F=7$$\"+5kHupF?F(7$$\"+!QOC)pF?F(7$$\"+]jd!*pF ?Fen7$$\"+?jr)*pF?Fen7$$\"+!Hco+(F?Fen7$$\"+gi*\\,(F?Fen7$$\"+Ii8BqF?F ^z7$$\"++iFJqF?Fen7$$\"+qhTRqF?Fen7$$\"+ShbZqF?F(7$$\"+:hpbqF?F(7$$\"+ 57(H7(F?F(7$$\"++jC!>(F?F(7$$\"+&ob')>(F?F(7$$\"+q]12sF?Fen7$$\"+gWZ:s F?Fen7$$\"+XQ)QA(F?Fen7$$\"+?EqSsF?Fen7$$\"+!R@vD(F?Fen7$$\"+!yIfE(F?F =7$$\"+l,MusF?Fen7$$\"+]&\\FG(F?F(7$$\"+S*e6H(F?F(7$$\"+D$o&*H(F?Fen7$ $\"+5x(zI(F?F=7$$\"++rQ;tF?F^z7$$\"+&['zCtF?Fen7$$\"+IM-LtF?F=7$$\"+q. DTtF?F=7$$\"+:tZ\\tF?Fcz7$$\"+gUqdtF?Fen7$$\"+07$fO(F?F(7$$\"+]\"eTP(F ?F^z7$$\"+&4&Q#Q(F?F=7$$\"+S?h!R(F?F(7$$\"+:)>NU(F?F(7$$\"+!fFkX(F?F(7 $$\"+NXlkuF?F=7$$\"+![\")GZ(F?F=7$$\"+D%36[(F?F(7$$\"+q`L*[(F?Fen7$$\" +:Bc(\\(F?F(7$$\"+g#*y0vF?F(7$$\"++i,9vF?F^z7$$\"+XJCAvF?F(7$$\"+!4q/` (F?F(7$$\"+IqpQvF?F(7$$\"+vR#pa(F?Fen7$$\"+?4:bvF?Fen7$$\"+lyPjvF?F(7$ $\"+5[grvF?Fen7$$\"+b<$)zvF?F(7$$\"+)pe!)e(F?F=7$$\"+!p=gf(F?F^z7$$\"+ !oyRg(F?F(7$$\"+q'Q>h(F?F(7$$\"+l')*)>wF?F=7$$\"+g'eyi(F?F=7$$\"+]'=ej (F?F(7$$\"+S'yPk(F?Fen7$$\"+I'Q!)F?F(7$$\"+04QG!)F?F=7$$\"+?\">s.)F?Fen7$$\"+It0Y!)F?Fen7$$\"+Xb*[0 )F?F^z7$$\"+gPtj!)F?F(7$$\"+q>ds!)F?F(7$$\"+&=593)F?F=7$$\"++%[-4)F?F= 7$$\"+5m3*4)F?Fcz7$$\"+D[#z5)F?F(7$$\"+SIw;\")F?F=7$$\"+`7gD\")F?F(7$$ \"+!yUN8)F?F^z7$$\"+5V[T\")F?Fen7$$\"+SeU\\\")F?Fcz7$$\"+ltOd\")F?F(7$ $\"+!*)3`;)F?F=7$$\"+?/Dt\")F?Fen7$$\"+]>>\"=)F?F=7$$\"+vM8*=)F?F=7$$ \"++]2(>)F?F=7$$\"+Il,0#)F?F(7$$\"+g!eH@)F?F(7$$\"+!f**3A)F?Fen7$$\"+? 6%)G#)F?Fen7$$\"+XEyO#)F?F=7$$\"+qTsW#)F?F(7$$\"++dm_#)F?Fen7$$\"+Isgg #)F?F=7$$\"+b([&o#)F?Fen7$$\"+!G!\\w#)F?F=7$$\"+5=V%G)F?F=7$$\"+SLP#H) F?Fen7$$\"+l[J+$)F?Fen7$$\"+!Rc#3$)F?Fen7$$\"+?z>;$)F?Fen7$$\"+]%RTK)F ?Fen7$$\"+v43K$)F?F(7$$\"++D-S$)F?F(7$$\"+IS'zM)F?F(7$$\"+gb!fN)F?F(7$ $\"+&3ZQO)F?Fen7$$\"+:')yr$)F?F=7$$\"+W,tz$)F?F(7$$\"+?%4#)Q)F?F(7$$\" +&p)o'R)F?F(7$$\"+qz;0%)F?F(7$$\"+Xsk8%)F?Fen7$$\"+?l7A%)F?F^z7$$\"++e gI%)F?F(7$$\"+v]3R%)F?Fen7$$\"+]VcZ%)F?Fen7$$\"+DO/c%)F?Fen7$$\"++H_k% )F?F(7$$\"+!=-IZ)F?F^z7$$\"+b9[\"[)F?F(7$$\"+I2'**[)F?F(7$$\"+5+W)\\)F ?Fen7$$\"+&G>p])F?F(7$$\"+g&)R:&)F?F(7$$\"+lcJ\\&)F?F(7$$\"+qFB$e)F?F( 7$$\"+X?r\"f)F?F=7$$\"+?8>+')F?F=7$$\"++1n3')F?F(7$$\"+v)\\rh)F?F(7$$ \"+]\"Hci)F?F(7$$\"+D%3Tj)F?F(7$$\"++xeU')F?F(7$$\"+xp1^')F?Fen7$$\"+g /ve')F?F(7$$\"+XRVm')F?Fen7$$\"+Iu6u')F?Fen7$$\"+:4!=o)F?F(7$$\"++W[*o )F?F(7$$\"+!)y;(p)F?Fen7$$\"+l8&[q)F?F=7$$\"+][`7()F?F(7$$\"+?=!zs)F?F (7$$\"+!zoKu)F?F(7$$\"+vA&4v)F?F=7$$\"+gdje()F?F(7$$\"+S#>jw)F?F=7$$\" +DF+u()F?F=7$$\"+5io\"y)F?F(7$$\"+!pp$*y)F?Fen7$$\"+vJ0(z)F?Fen7$$\"+g mt/))F?F(7$$\"+X,U7))F?F(7$$\"+IO5?))F?Fen7$$\"+:ryF))F?Fen7$$\"++1ZN) )F?Fen7$$\"+&3aJ%))F?Fen7$$\"+qv$3&))F?Fen7$$\"+b5_e))F?F=7$$\"+SX?m)) F?F(7$$\"+5:d\")))F?F(7$$\"+w%Qp*))F?F(7$$\"+?(R8.*F?F(7$$\"+o4ul\"*F? F(7$$\"+l??#H*F?F(7$$\"+lJm=%*F?F(7$$\"+I\\#pU*F?F]]n7$$\"++n=N%*F?F]] n7$$\"+q%[MW*F?F]]n7$$\"+S-r^%*F?Ff\\n7$$\"+5?(*f%*F?F(7$$\"+vPBo%*F?F ]]n7$$\"+Sb\\w%*F?F]]n7$$\"+5tv%[*F?F(7$$\"+!3>I\\*F?Ff\\n7$$\"+X3G,&* F?F]]n7$$\"+5Ea4&*F?Fgjm7$$\"+!Q/y^*F?F`jm7$$\"+:zKM&*F?F`jm7$$\"+]9&3 b*F?F`jm7$$\"+?K6f&*F?F`jm7$$\"+&)\\Pn&*F?F`jm7$$\"+]njv&*F?F`jm7$$\"+ ?&)*Qe*F?Fd]n7$$\"+g?U+'*F?F`jm7$$\"+&fXph*F?Fgjm7$$\"+gt?D'*F?Ff\\n7$ $\"+I\"pMj*F?F`jm7$$\"++4tT'*F?F(7$$\"+lE**\\'*F?Fgjm7$$\"+IWDe'*F?Fgj m7$$\"++i^m'*F?F]]n7$$\"+qzxu'*F?F]]n7$$\"+P(RIo*F?F`jm7$$\"+!H\\`r*F? F(7$$\"+X)ewu*F?Ff\\n7$$\"+?O\"Qw*F?Fgjm7$$\"++%o*z(*F?F`jm7$$\"+!zX!) y*F?F]]n7$$\"+vJ7'z*F?F]]n7$$\"+g0?/)*F?Fgjm7$$\"+]zF7)*F?Fgjm7$$\"+S` N?)*F?F`jm7$$\"+DFVG)*F?Fgjm7$$\"+5,^O)*F?Fgjm7$$\"++veW)*F?Ff\\n7$$\" +!*[m_)*F?F(7$$\"+!GU2')*F?F(7$$\"+q'>)o)*F?Ff\\n7$$\"+bq*o()*F?Ff\\n7 $$\"+SW(\\))*F?F`jm7$$\"+I=0$*)*F?F]]n7$$\"+?#H6!**F?F]]n7$$\"+5m?4**F ?F`jm7$$\"++SG<**F?F(7$$\"+&Qh`#**F?F`jm7$$\"+q(QM$**F?F(7$$\"+gh^T**F ?Fgjm7$$\"+q7Mv**F?F(7$$\"+Qm\"4+\"!\")F]]n7$$\"+mAw,5FbjsF`jm7$$\"+$* yg-5FbjsF`jm7$$\"+?NX.5FbjsF(7$$\"+[\"*H/5FbjsFd]n7$$\"+wZ905FbjsFgjm7 $$\"+//*f+\"FbjsF]]n7$$\"+Kg$o+\"FbjsF]]n7$$\"+f;o25FbjsFd]n7$$\"+'GF& 35FbjsFgjm7$$\"+9HP45FbjsF(7$$\"+U&=-,\"FbjsFgjm7$$\"+qT165FbjsFf\\n7$ $\"+)z4>,\"FbjsF]]n7$$\"+Dav75FbjsFgjm7$$\"+_5g85FbjsF`jm7$$\"+!oYW,\" FbjsFf\\n7$$\"+3BH:5FbjsF(7$$\"+Oz8;5FbjsFf\\n7$$\"+kN)p,\"FbjsFf\\n7$ $\"+\">Hy,\"FbjsF`jm7$$\"+=[n=5FbjsFf\\n7$$\"+Y/_>5FbjsFd]n7$$\"+ugO?5 FbjsFgjm7$$\"+-<@@5FbjsFf\\n7$$\"+Uh-A5FbjsFgjm7$$\"+#eSG-\"FbjsF(7$$ \"+A]lB5FbjsF`jm7$$\"+i%pW-\"FbjsFf\\n7$$\"+U$)4E5FbjsF(7$$\"+AssF5Fbj sF`jm7$$\"+-hNH5FbjsF(7$$\"+#)\\)4.\"FbjsFf\\n7$$\"+iQhK5FbjsFgjm7$$\" +UFCM5FbjsF`jm7$$\"+A;(e.\"FbjsF(7$$\"+-0]P5FbjsFgjm7$$\"+U\\JQ5FbjsF` jm7$$\"+#QH\"R5FbjsFgjm7$$\"+AQ%*R5FbjsFgjm7$$\"+i#e2/\"FbjsF`jm7$$\"+ UrQU5FbjsF(7$$\"+Ag,W5FbjsFf\\n7$$\"+-\\kX5FbjsFgjm7$$\"+\"yts/\"FbjsF (7$$\"+6`g]5FbjsF(7$$\"+To$R0\"FbjsF(7$$\"+C(pZ0\"FbjsFgjm7$$\"+1Egb5F bjsFf\\n7$$\"+)[Nk0\"FbjsF(7$$\"+r$os0\"FbjsFf\\n7$$\"+a75e5FbjsF(7$$ \"+OT$*e5FbjsFf\\n7$$\"+=qwf5FbjsF(7$$\"+,**fg5FbjsF]]n7$$\"+%yK91\"Fb jsF`jm7$$\"+mcEi5FbjsFgjm7$$\"+[&)4j5FbjsF(7$$\"+J9$R1\"FbjsF(7$$\"+9V wk5FbjsF(7$$\"+'>(fl5FbjsF]cn7$$\"+y+Vm5FbjsFf\\n7$$\"+hHEn5FbjsFd]n7$ $\"+We4o5FbjsF(7$$\"+E(G*o5FbjsFf\\n7$$\"+3;wp5FbjsF`jm7$$\"+\"\\%fq5F bjsFf\\n7$$\"+utUr5FbjsF`jm7$$\"+c-Es5FbjsFf\\n7$$\"+QJ4t5FbjsF]]n7$$ \"+@g#R2\"FbjsF]]n7$$\"+3R`!3\"FbjsF]]n7$$\"+%zTr3\"FbjsF]]n7$$\"+!ynz 3\"FbjsFd]n7$$\"+mPz)3\"FbjsF]]n7$$\"+_(>'*3\"FbjsF]]n7$$\"+PdW!4\"Fbj sFd]n7$$\"+AS6\"FbjsF]]n7$$\"+w%yZ6\"FbjsFf\\n7$$\"+ru`:6FbjsF`jm7$$\"+ia0<6Fbj sF(7$$\"+_Md=6FbjsFgjm7$$\"+ZCL>6FbjsF`jm7$$\"+U94?6FbjsFgjm7$$\"+P/&3 7\"FbjsF]]n7$$\"+K%4;7\"FbjsFd]n7$$\"+F%oB7\"FbjsFgjm7$$\"+Au7B6FbjsF` jm7$$\"+=k)Q7\"FbjsFf\\n7$$\"+8akC6FbjsF]]n7$$\"+3`^D6FbjsF`jm7$$\"+-_ QE6FbjsFf\\n7$$\"+'4bs7\"FbjsF]]n7$$\"+!*\\7G6FbjsF`jm7$$\"+yZ')H6Fbjs Fgjm7$$\"+mXgJ6FbjsF]cn7$$\"+aVML6FbjsFgjm7$$\"+UT3N6FbjsF(7$$\"+OS&f8 \"FbjsF]]n7$$\"+IR#o8\"FbjsFf\\n7$$\"+CQpP6FbjsFf\\n7$$\"+>PcQ6FbjsF]] n7$$\"+9OVR6FbjsF]]n7$$\"+3NIS6FbjsFf\\n7$$\"+-M8H9\"FbjsF]]n7$$\"+%3$yV6FbjsF`jm7$$\"+yHlW6FbjsFf \\n7$$\"+sG_X6FbjsF]]n7$$\"+mFRY6FbjsF]]n7$$\"+gEEZ6FbjsFf\\n7$$\"+aD8 [6FbjsFgjm7$$\"+[C+\\6FbjsF]]n7$$\"+OAu]6FbjsF(7$$\"+D?[_6FbjsFgjm7$$ \"+7\"QS:\"FbjsF(7$$\"++Ufb6FbjsF]]n7$$\"+WAPc6FbjsF]]n7$$\"+(G]r:\"Fb jsFgjm7$$\"+I$Gz:\"FbjsFd]n7$$\"+ujqe6FbjsFgjm7$$\"+=W[f6FbjsFf\\n7$$ \"+iCEg6FbjsFgjm7$$\"+10/h6FbjsFgjm7$$\"+\\&==;\"FbjsF(7$$\"+#f'fi6Fbj sF]]n7$$\"+OYPj6FbjsF(7$$\"+!o_T;\"FbjsFf\\n7$$\"+C2$\\;\"FbjsF]cn7$$ \"+o(3d;\"FbjsF]]n7$$\"+6o[m6FbjsF`jm7$$\"+a[En6FbjsFf\\n7$$\"+)*G/o6F bjsFgjm7$$\"+U4#)o6FbjsF]]n7$$\"+')*)fp6FbjsF`jm7$$\"+IqPq6FbjsF]]n7$$ \"+t]:r6FbjsFgjm7$$\"+g6rs6FbjsF`jm7$$\"+[sEu6FbjsF]]n7$$\"+#HX]<\"Fbj sF]cn7$$\"+NL#e<\"FbjsF]]n7$$\"+y8gw6FbjsFgjm7$$\"+A%zt<\"FbjsFf\\n7$$ \"+z*3#y6FbjsF]]n7$$\"+O&Q!z6FbjsF]]n7$$\"+$4o)z6FbjsF`jm7$$\"+]wp!=\" FbjsF]]n7$$\"+2s_\"=\"FbjsF`jm7$$\"+knN#=\"FbjsF]]n7$$\"+?j=$=\"FbjsFf \\n7$$\"+xe,%=\"FbjsF`jm7$$\"+Ma%[=\"FbjsF(7$$\"+!*\\n&=\"FbjsFgjm7$$ \"+ZX]'=\"FbjsFf\\n7$$\"+/TL(=\"FbjsF]]n7$$\"+hO;)=\"FbjsF]]n7$$\"+=K* *)=\"FbjsFgjm7$$\"+vF#)*=\"FbjsF]]n7$$\"+KBl!>\"FbjsF]]n7$$\"+Y9J#>\"F bjsF(7$$\"+f0(R>\"FbjsFgjm7$$\"+;,![>\"FbjsFf\\n7$$\"+s'Hc>\"FbjsF(7$$ \"+H#fk>\"FbjsF]]n7$$\"+'y)G(>\"FbjsFf\\n7$$\"+V$=\")>\"FbjsFf\\n7$$\" ++z%*)>\"FbjsF]]n7$$\"+dux*>\"FbjsFgjm7$$\"+9qg+7FbjsF`jm7$$\"+rlV,7Fb jsF`jm7$$\"+GhE-7FbjsF]]n7$$\"+%o&4.7FbjsF]]n7$$\"+T_#R?\"FbjsFf\\n7$$ \"+37527FbjsFgjm7$$\"+vrF57FbjsF`jm7$$\"+m6267FbjsF(7$$\"+e^'=@\"FbjsF ]]n7$$\"+]\"fE@\"FbjsF(7$$\"+UJX87FbjsFf\\n7$$\"+MrC97FbjsFgjm7$$\"+E6 /:7FbjsFd]n7$$\"+=^$e@\"FbjsF]]n7$$\"+4\"Hm@\"FbjsFd]n7$$\"++JU<7FbjsF ]]n7$$\"+#4<#=7FbjsFd]n7$$\"+%36!>7FbjsF]]n7$$\"+w]!)>7FbjsF(7$$\"+o!* f?7FbjsF]]n7$$\"+gIR@7FbjsFgjm7$$\"+_q=A7FbjsF(7$$\"+V5)HA\"FbjsF`jm7$ $\"+M]xB7FbjsFgjm7$$\"+E!pXA\"FbjsF`jm7$$\"+=IOD7FbjsF]cn7$$\"+5q:E7Fb jsFgjm7$$\"+-5&pA\"FbjsFf\\n7$$\"+%*\\uF7FbjsF]]n7$$\"+')*Q&G7FbjsF`jm 7$$\"+xHLH7FbjsF`jm7$$\"+)**ehB\"FbjsFgjm7$$\"+=])HC\"FbjsFf\\n7$$\"+q #QQC\"FbjsFf\\n7$$\"+B:pW7FbjsFgjm7$$\"+wZaX7FbjsFf\\n7$$\"+G!)RY7Fbjs F]cn7$$\"+!G^sC\"FbjsF(7$$\"+LX5[7FbjsF]]n7$$\"+'yd*[7FbjsFf\\n7$$\"+Q 5\")\\7FbjsFf\\n7$$\"+Vv^^7FbjsFgjm7$$\"+[SA`7FbjsF`jm7$$\"+,t2a7FbjsF `jm7$$\"+a0$\\D\"FbjsF]]n7$$\"+1Qyb7FbjsFf\\n7$$\"+fqjc7Fbjs$!\"%F--%' COLOURG6&%$RGBGF(F($\"*++++\"Fbjs-%+AXESLABELSG6$Q\"x6\"Q!Fehv-%%VIEWG 6$;F($\"+iqjc7Fbjs%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 136 "The solution has been constructed in suc h a way that up to a point it will produce more accurate values when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 86 "Even so the re are significant errors in the neighbourhood of the 'bumps\" in the \+ graph." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "evalf[15](plot('gn1'(x)-g(x),x=0..4*Pi,color=blue,num points=100));" }}{PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6 &-%'CURVESG6#7`dm7$$\"\"!F)F(7$$\"0GZ(eZ8?L!#;F(7$$\"0b%\\<&p-k'F-$!#o !#97$$\"0?oo*oL+$)F-$\"$L(F37$$\"0!=CwUSg**F-$\"%#\\#F37$$\"0_3@6Uv.\" !#:$\"%!y#F37$$\"0'Gf'zV!z5FA$\"%[HF37$$\"0?x5[X07\"FA$\"%&)HF37$$\"0a hb;Z?;\"FA$\"%\"*GF37$$\"0AIX`]]C\"FA$\"%eBF37$$\"0\"*)\\.R0G8FA$\"%7: F37$$\"0+X&ya\\s9FA$!#fF37$$\"05\"f`q$ph\"FA$!$'**F37$$\"0?P'G'y8w\"FA $!%N6F37$$\"0I$o.-#e!>FA$!$v*F37$$\"0]vPN.Z>#FA$!$v'F37$$\"0pnQ]'e$[#F A$\"$t#F37$$\"0yz;;Egk#FA$\"%**=F37$$\"0'=\\>eY3GFA$\"%_CF37$$\"0%RIxa !4(HFA$\"$e*F37$$\"0-;^8XL8$FA$!$r&F37$$\"01AS'\\c9KFA$!$I)F37$$\"05GH z%y&H$FA$!$(yF37$$\"09M=i/qP$FA$!$4'F37$$\"0=S2XC#eMFA$!$e%F37$$\"0E_& 3Tm?OFA$!$z\"F37$$\"0Nkjw.Jy$FA$\"$T#F37$$\"0%=nz,iYRFA$\"%')>F37$$\"0 MzHfO,6%FA$\"%))QF37$$\"0$oG1IltUFA$\"%!p\"F37$$\"0K%f>%prV%FA$!$K)F37 $$\"0I4iC-Uw%FA$!$a$F37$$\"0HCG2N74&FA$\"%B@F37$$\"0N$*pp/E<&FA$\"%#\\ %F37$$\"0Xi6KuRD&FA$\"%)\\&F37$$\"0bJ`%RMN`FA$\"%`VF37$$\"0l+&pNr;aFA$ \"%X>F37$$\"0qpO>$3)\\&FA$!$4#F37$$\"0!)Qy\"GXzbFA$!%Y6F37$$\"0!z+UC#3 m&FA$!$i*F37$$\"0+xh1#>UdFA$!$Q%F37$$\"0?:XJJ\\!fFA$\"$[&F37$$\"0N`Gcq w1'FA$\"%(G#F37$$\"0XAq=S!\\hFA$\"%5eF37$$\"0b\">6)4/B'FA$\"%gtF37$$\" 0lg`VzmFA$!$?\"F37$$\"0N'4!H4\\p'FA$\"$g&F 37$$\"0+QxM\\.x'FA$\"%!H\"F37$$\"0qz`S*yXoFA$\"%\")=F37$$\"0N@IYH7#pFA $\"%gVF37$$\"0+j1_pm*pFA$\"%o!*F37$$\"0IYfj\\v9(FA$\"%1YF37$$\"0lH7vH% )H(FA$!$Y(F37$$\"0&H^m)4$\\uFA$\"%X?F37$$\"0G'z\")**=+wFA$\"%@[F37$$\" 0!4\"o)oCRwFA$\"%9\"*F37$$\"0bD=z.$ywFA$\"&=M\"F37$$\"0?Sopgtr(FA$\"&Y _\"F37$$\"0![&=gAXE\"zFA$!%y9F37$$\"0gU> .f2*zFA$\"%x7F37$$\"0!>(>%G()o!)FA$\"%iYF37$$\"0]')puHz5)FA$\"%#y%F37$ $\"0:,?l')p9)FA$\"%'o%F37$$\"0!e,dN/'=)FA$\"&O<\"F37$$\"0SI?Y+^A)FA$\" &(pTF37$$\"0+XqOdTE)FA$\"&vM)F37$$\"0lf?F9KI)FA$\"'zc6F37$$\"0Iuq#F37$$\"0N\">F37$$\"0!*\\s.a4\"))FA$\"&'[=F37$$\"0_kA%4,]))FA$\"&g+#F 37$$\"0Sl&)f_J<*FA$\"&VL#F37$$\"0Im[D%H'\\*FA$\"&T%GF37$$\"0v;I3lyl*FA $\"&O0$F37$$\"0?n6\"fV>)*FA$\"&*zMF37$$\"0![?='G)f)*FA$\"&_P$F37$$\"0S U_K@-!**FA$\"&r`$F37$$\"0+!GKShS**FA$\"&O<%F37$$\"0l<$Rn+\")**FA$\"&^L %F37$$\"0HR`@zh+\"F3$\"&:j%F37$$\"0\"oucxD95F3$\"&#R\\F37$$\"0O#fBIOI5 F3$\"&-D&F37$$\"0!zV!Hok/\"F3$\"&EF&F37$$\"0X$GdNdi5F3$\"&$=]F37$$\"0+ HT#)y'y5F3$\"&ld%F37$$\"0y^vXJn3\"F3$\"&VS%F37$$\"0bu44%y%4\"F3$\"&15% F37$$\"0%fo2/\"))4\"F3$\"&)eSF37$$\"0K(RCn$G5\"F3$\"&2(RF37$$\"0r36/jo 5\"F3$\"&ny$F37$$\"05?yN*)36\"F3$\"&bG$F37$$\"0[JXn:\\6\"F3$\"&*>LF37$ $\"0(GC\"*>%*=6F3$\"&pd$F37$$\"0EazIoH7\"F3$\"&&>RF37$$\"0klYi%*p7\"F3 $\"&p.$F37$$\"0.x8%4-J6F3$\"&u1#F37$$\"0U)3es/N6F3$\"&tN$F37$$\"0!)*zu N2R6F3$\"&2?$F37$$\"0>6:*)*4V6F3$\"&'RJF37$$\"0\\pw([O47F3$\"&Xj#F37$$ \"0zFQ')HcF\"F3$\"&6E#F37$$\"0\"[q*4'*RL\"F3$\"&b3#F37$$\"0$=eNBO#R\"F 3$\"&n&>F37$$\"08m2XvP_\"F3$\"&Pw\"F37$$\"0r'z0=v*e\"F3$\"&)Q;F37$$\"0 HF3;Gdl\"F3$\"&YY\"F37$$\"0WEirvOm\"F3$\"&4[\"F37$$\"0gD;FB;n\"F3$\"&$ f9F37$$\"0wCq#3dz;F3$\"&iZ\"F37$$\"0#RU#Q=vo\"F3$\"&ak\"F37$$\"03By$fY &p\"F3$\"&)[>F37$$\"0CAK\\8Mq\"F3$\"&!3@F37$$\"0S@'[5O6$4!=F3$\"&rK\"F37$$\"0P*Gs/a/=F3$\"&lK$eA=F3$\"%@vF37$$\"0#\\O(*=>E=F3$ \"%7tF37$$\"0%3@o/!)H=F3$\"%UzF37$$\"0xc!R!4M$=F3$\"%#\\)F37$$\"0q-*4w ,P=F3$\"%<#)F37$$\"0i[2=E1%=F3$\"%ApF37$$\"0a%f^ZBW=F3$\"%\">&F37$$\"0 ZSCKVy%=F3$\"%4VF37$$\"0S'G$*=X^=F3$\"%mfF37$$\"0KKTYg]&=F3$\"&u;\"F37 $$\"0Cy\\.p'e=F3$\"&+@#F37$$\"0O=L5t=F3$\"&yb'F37$$\"0(y?*)=r w=F3$\"&kX&F37$$\"0!Q0g/K!)=F3$\"&t=$F37$$\"0s**3.HR)=F3$\"&-<\"F37$$ \"0kXF3$\"&'o6F37$$\"0T60N=q '>F3$\"&]P\"F37$$\"0mv-H48(>F3$\"&NL\"F37$$\"0!*R+B+c(>F3$\"&uO\"F37$$ \"0:/)p6*)z>F3$\"&8a\"F37$$\"0So&4@=%)>F3$\"&Il\"F37$$\"0lK$\\IZ))>F3$ \"&bO\"F37$$\"0!p4*)Rw#*>F3$\"&d=\"F37$$\"0:h)G\\0(*>F3$\"&&>ou4#F3$\"&t%RF37$$\"02ob=.65#F3$\"&y)QF37$$\"0)=Ru\"QZ5#F3$\"&r*RF37 $$\"0q:K;t$3@F3$\"&)[RF37$$\"0Lj39Vc6#F3$\"&.*QF37$$\"0'4^=J\"H7#F3$\" &^!QF37$$\"0A1Q2`u8#F3$\"&rN$F37$$\"0[,\"HI*>:#F3$\"&H&HF37$$\"0()zOX1 *o@F3$\"&#RDF37$$\"0Ee#y)>e=#F3$\"&34#F37$$\"0YZ0fwU>#F3$\"&h;#F37$$\" 0lOGILF?#F3$\"&ZG#F37$$\"0C\")*e;'p?#F3$\"&'4>F37$$\"0%e7:+>6AF3$\"&(G 8F37$$\"0Wq7P=a@#F3$\"&)>AF3$\"&m2#F37$$\"0C/(RM5GAF3$ \"&q$=F37$$\"0V$*>:glB#F3$\"&/M\"F37$$\"0-Q\"3&)ySAF3$\"&=3\"F37$$\"0i #Gko,XAF3$\"&wX\"F37$$\"0AF/AX#\\AF3$\"&7b\"F37$$\"0#=dwNZ`AF3$\"&$>8F 37$$\"0U;F$>qdAF3$\"&*HE#F3$\"&+;#F37$$\"0g0]kehE#F3$ \"&^%=F37$$\"0?]6+(QqAF3$\"%1$*F37$$\"0![Hd`huAF3$\"%fGF37$$\"0SRMrV)y AF3$\"%[bF37$$\"0+%ep?2$G#F3$\"&cL\"F37$$\"0fGdU+tG#F3$\"&*=9F37$$\"0% RQPK/\"H#F3$\"%O&*F37$$\"0GR!\\gy%H#F3$\"&!y5F37$$\"0i%pg)G&)H#F3$\"&3 q\"F37$$\"0(*\\BnrAI#F3$\"&,R#F37$$\"0K0S[9gI#F3$\"&F37$$\"0+;t5+NJ#F3$\"%V$*F37$$\"0Nr*=HCF37$$\"0\"*[$et))GFF3$\"%BHF37$$\"0C +yQ2_u#F3$\"%dBF37$$\"0e^sTF:w#F3$\"$O*F37$$\"0Dx>V(opFF3$\"$b(F37$$\" 0#HqYu%yx#F3$\"%65F37$$\"0fG9Y2gy#F3$\"%R9F37$$\"0EahZnTz#F3$\"%%p\"F3 7$$\"0T_xNa\"4GF3$\"%W9F37$$\"0c]$R79CGF3$\"%[;F37$$\"0k\\,oM;$GF3$\"% #*>F37$$\"0s[47G\"RGF3$\"%#G#F37$$\"0!yuh:iYGF3$\"%MBF37$$\"0(oa-]6aGF 3$\"%.@F37$$\"0-XT)=5pGF3$\"%37F37$$\"0=Vdw)3%)GF3$\"$@(F37$$\"0LTtkv! **GF3$\"%K5F37$$\"0[R*GD19HF3$\"%\"Q\"F37$$\"0NF1a&QVIF3$\"%(4\"F37$$ \"0-uN#oMFJF3$\"%'G\"F37$$\"0T2$QK8WJF3$\"% 2!*FA7$$\"03a7_C4;$F3$\"%\")oFA7$$\"0w+U!erxJF3$\"%#p(FA7$$\"05l)[K=OK F3$\"%T*)FA7$$\"0XHNp]YH$F3$\"%6)*FA7$$\"0#3./tV5LF3$\"%)*yFA7$$\"0?KX \"RAELF3$\"%KpFA7$$\"0dL]_5?M$F3$\"%4rFA7$$\"0%\\`NrzdLF3$\"%4wFA7$$\" 0oPlNq$*Q$F3$\"%kvFA7$$\"0USvdV4U$F3$\"%w!)FA7$$\"0:yU!=c`MF3$\"%r#*FA 7$$\"0)e,J+='[$F3$\"%p!)FA7$$\"0g`xD)z=NF3$\"%\">(FA7$$\"0L\"\\%[;9b$F 3$\"%jnFA7$$\"0u$*piP_h$F3$\"%ZrFA7$$\"0:'\\p(e!zOF3$\"%]yFA7$$\"0p#*z )Q$*4PF3$\"%yyFA7$$\"0B*[1!43u$F3$\"%byFA7$$\"0x&)\\7%orPF3$\"%&p'FA7$ $\"0J#[V#fD!QF3$\"%3dFA7$$\"0%f``B7rQF3$\"%JqFA7$$\"0c*ejaoRRF3$\"%%*z FA7$$\"0!\\^l*)[qRF3$\"%AyFA7$$\"0DSuY#H,SF3$\"%dzFA7$$\"0gl$pf4KSF3$ \"%myFA7$$\"0%4Hr%**G1%F3$\"%IpFA7$$\"0_:SscW>%F3$\"%TgFA7$$\"0OO#[rm8 VF3Fefp7$$\"0,4&Hc*RW%F3$\"%$z%FA7$$\"0_]OdCmc%F3$\"%X\\FA7$$\"0b-U:2[ p%F3$\"%()QFA7$$\"0wMj0H,#[F3$\"%7OFA7$$\"0yPOZH8&\\F3$\"%TMFA7$$\"02S !p5px]F3$\"%6PFA7$$\"0_[609p?&F3$\"%aRFA7$$\"0%=s,q1N`F3$\"%IOFA7$$\"0 :[QDEGX&F3$\"%aQFA7$$\"0o4fk\"z(e&F3$\"%XVFA7$$\"0l1P(*[\"[cF3$\"%EUFA 7$$\"0k.:I1&3dF3$\"%>TFA7$$\"0v\\;0$oSdF3$\"%8DFA7$$\"0&ez,)fGx&F3$\"% ^BFA7$$\"0!*oo<[*)y&F3$\"%@GFA7$$\"0&>%>bO]!eF3$\"%*p$FA7$$\"0+:q#\\7@ eF3$\"%2^FA7$$\"0-)3-L@PeF3$\"%BoFA7$$\"0Nj)H>h_eF3$\"%-\")FA7$$\"0lQw b5!oeF3$\"%U\")FA7$$\"0&RT&=4M)eF3$\"%9jFA7$$\"0D*=8y!))*eF3$\"%>GFA7$ $\"0bk4W1U\"fF3$!$m)FA7$$\"0&)R(o]gHfF3$!%TAFA7$$\"0::lp.]%fF3$\"$*oFA 7$$\"0\\!HCBSgfF3$\"%fcFA7$$\"05#[@0]xfF3$\"%gNFA7$$\"0vt'=()f%*fF3$\" %)o%FA7$$\"0Sle\"pp6gF3$\"&Y+\"FA7$$\"00dI6&zGgF3$\"&'=9FA7$$\"0NSu]\" *H1'F3$\"&?>\"FA7$$\"0kB=!z=(4'F3$\"%g')FA7$$\"0gxmY*zEhF3$\"%6\\FA7$$ \"0bJ:.6k:'F3$!%[$)FA7$$\"0+XF#R\"Q;'F3$!&&*4\"FA7$$\"0]eR\"o@rhF3$!&& *=\"FA7$$\"0+s^q>'yhF3$!&Y.\"FA7$$\"0]&Q'fAg='F3$!%$3'FA7$$\"0+*f([DM> 'F3$\"$]#FA7$$\"0X7)y$G3?'F3$\"%OkFA7$$\"0&f-q7B3iF3$\"%cuFA7$$\"0VR7; Mc@'F3$\"%(=(FA7$$\"00Cn&)QCB'F3$\"&_1\"FA7$$\"0q3AbV#\\iF3$\"&lf\"FA7 $$\"0+^***ekdiF3$\"&to\"FA7$$\"0N$pZ#[gE'F3$\"&ch\"FA7$$\"0qNaf]WF'F3$ \"&IT\"FA7$$\"0+yJ%H&GG'F3$\"&C9\"FA7$$\"0li'Qwl*H'F3$\"$k'F37$$\"0IZT LikJ'F3$\"$$\\F37$$\"0&>jHqELjF3$\"$/&F37$$\"0f;^sr+N'F3$\"$l%F37$$\"0 g[j..2Q'F3$\"$4*F37$$\"0g!eZVL6kF3$\"%$y\"F37$$\"0g)Qv@**=kF3$\"%#H#F3 7$$\"0g'>.+lEkF3$\"%(e#F37$$\"0g+r\"*y/V'F3$\"%@EF37$$\"0g/5$yIMkF3$\" %wDF37$$\"0g3\\uO\"QkF3$\"%bCF37$$\"0g7)ec'>W'F3$\"%tAF37$$\"0gGWJ\"Gd kF3$\"%F7F37$$\"0gW+(pfskF3$\"$M%F37$$\"0+P.*)\\$*['F3$\"$G$F37$$\"0SH 1\"G51lF3$\"$;&F37$$\"0gv2FzW^'F3$\"$l&F37$$\"0!=#4tbG_'F3$\"$Z'F37$$ \"0+o5>K7`'F3$\"$l)F37$$\"0:97l3'RlF3$\"%^6F37$$\"0]1:dhjb'F3$\"%4:F37 $$\"0!*)z\"\\9Jd'F3$\"%@MF37$$\"0+s=s-td'F3$\"%$p$F37$$\"05X>&4\\\"e'F 3$\"%\"y$F37$$\"0?=?=zce'F3$\"%!o$F37$$\"0I\"47u')*e'F3$\"%1MF37$$\"0] PA(QC)f'F3$\"%'\\#F37$$\"0n$QK.i1mF3$\"%T9F37$$\"0Sr3!y%Qh'F3$\"$.(F37 $$\"05f$p_2@mF3Fh_l7$$\"0!o%yt-$GmF3$\"$u\"F37$$\"0]Mj?Ibj'F3$\"$\"HF3 7$$\"0!*4L9&)*\\mF3$\"$N'F37$$\"0I&G!3SWm'F3$\"$D*F37$$\"05OU&*\\Lp'F3 $\"%[DF37$$\"0*o=G)fAs'F3$\"%!Q%F37$$\"0vv=x4\")y'F3$\"%3;F37$$\"0gkbr fR&oF3$\"$N&F37$$\"0gXUmh)poF3$\"%Y5F37$$\"0gEHhjd)oF3$\"%T?F37$$\"0g2 ;cl;!pF3$\"%MMF37$$\"0b)G5vc6E=?rF3$\"'d,7F37$$\"0!Gt&)39C rF3$\"'I:9F37$$\"0ln-;*4GrF3$\"'L$G\"F37$$\"0]-[Vd?8(F3$\"&*>&)F37$$\" 0IP$4d,OrF3$\"&:'GF37$$\"0:sQ)R(*RrF3$!&4/#F37$$\"0+2%eA$R9(F3$!&mW%F3 7$$\"0!=%H`!*y9(F3$!&:k$F37$$\"0lwu!)[=:(F3$!%'z#F37$$\"0]6?32e:(F3$\" &Gv$F37$$\"0IYlNl(frF3$\"&k0'F37$$\"0:\"3JOsjrF3$\"&Z7&F37$$\"0+;c!>on rF3$\"&)HDF37$$\"0!3:!=S;<(F3Fhao7$$\"05!HyKZ(=(F3$\"&6f#F37$$\"0XHkP1 L?(F3$\"&\"zHF37$$\"0!)oXZR\">sF3$\"&4>$F37$$\"083Fds\\B(F3$\"&Wh$F37$ $\"0b(*z*ydUsF3$\"&l$QF37$$\"0+(GBK=]sF3$\"&&\\RF37$$\"0Xw&[&)ydsF3$\" &hN%F37$$\"0!f'Q(QRlsF3$\"&6e%F37$$\"0g5l`'>psF3$\"&td%F37$$\"0Nb\"*>* *HF(F3$\"&lP%F37$$\"05+='=!oF(F3$\"&-A&F37$$\"0![WCXg!G(F3$\"&\"RaF37$ $\"0?M(\\)4#)G(F3$\"&fr&F37$$\"0lB]<:eH(F3$\"&t8'F37$$\"058.]?MI(F3$\" &,U'F37$$\"0]-c#e-6tF3$\"&;u'F37$$\"0&>*3:J'=tF3$\"&$=nF37$$\"0S\"=wkB EtF3$\"&;t'F37$$\"0Ign7Z9M(F3$\"&=['F37$$\"0=RtxdmN(F3$\"&>/'F37$$\"0& *)QN$z[O(F3$\"&%3dF37$$\"0qQM*35ttF3$\"&ER&F37$$\"0X)[^CK\"Q(F3$\"&p9& F37$$\"0?Q&4Sa*Q(F3$\"&b'[F37$$\"0qPc7()fS(F3$\"&Eo%F37$$\"0?PE#F37$$\"0:D$3PQvxF3$ \"&cB#F37$$\"0gXYH9.z(F3$\"&2Q#F37$$\"00m4)[C0yF3$\"&l`#F37$$\"0]'Gna< ?yF3$\"&n5#F37$$\"0+2O01^$yF3$\"&;/#F37$$\"0XF*Rm.]yF3$\"&(R?F37$$\"0! zCEs'\\'yF3$\"&c0#F37$$\"0]q\">$o9)yF3$\"&.6#F37$$\"05$47%pz*yF3$\"&=B #F37$$\"0q:]]qW\"zF3$\"&E*>F37$$\"0IQzfr4$zF3$\"&'H>F37$$\"0!4'3psu%zF 3$\"&7&>F37$$\"0]$y$ytR'zF3$\"&o$>F37$$\"051n([Z!)zF3$\"&nE#F37$$\"0qG 'pf(p*zF3$\"&$=BF37$$\"0lI79\"y7!)F3$\"&1$>F37$$\"0gKGJ'eG!)F3$\"&l%=F 37$$\"0gL')*))[O!)F3$\"&7(=F37$$\"0gMW[\"RW!)F3$\"&4&=F37$$\"05NtxU$[! )F3$\"&e#=F37$$\"0gN-2%H_!)F3$\"&P#=F37$$\"05OJOXi0)F3$\"&(z=F37$$\"0b Ogl'>g!)F3$\"&$>?F37$$\"0]P=C*4o!)F3$\"&[\\#F37$$\"0]Qw#=+w!)F3$\"&Xr# F37$$\"0+R07`*z!)F3$\"&-[#F37$$\"0]RMT/R3)F3$\"&(e?F37$$\"0+Sjqby3)F3$ \"&y'=F37$$\"0]S#**p!=4)F3$\"&)o@F37$$\"0+T@Hed4)F3$\"&#pAF37$$\"0]T]e 4(*4)F3$\"&m-#F37$$\"0+Uz(3m.\")F3$\"&1k\"F37$$\"0XU3<7w5)F3$\"&jL\"F3 7$$\"0&HujMc6\")F3$\"&;A\"F37$$\"0XVmv9b6)F3$\"&fE\"F37$$\"0&Ra\\gY>\" )F3$\"&KN\"F37$$\"0VWCMM&4b\\#)F3$\"&!*=#F37$$\"0I7TL>gE)F3$\"&aW#F37$$\"0q/[r([#G)F3$ \"&Wn#F37$$\"0!y(*4[g'G)F3$\"&'3CF37$$\"0!4:0>s!H)F3$\"&#>DF37$$\"0+C. +R[H)F3$\"&:*HF37$$\"05(\\&4c*)H)F3$\"&lN%F37$$\"0?q1>tII)F3$\"&_a%F37 $$\"0IVeG!>2$)F3$\"&CR\"F37$$\"0S;5Q28J)F3$\"%%4$F37$$\"0b*=wWU:$)F3$ \"&e8%F37$$\"0+#)o&G*=L)F3$\"&ob%F37$$\"0SuvBh$[$)F3$\"&([\\F37$$\"0&o E='H[O)F3$\"&(H_F37$$\"0Ff*)*zH\"Q)F3$\"&4[&F37$$\"0gw(yfY'R)F3$\"&eS& F37$$\"0&RfeRj6%)F3$\"&h)\\F37$$\"0I6%Q>!oU)F3$\"&gS%F37$$\"0gG#=*p>W) F3$\"&V%QF37$$\"0!f/)*y8d%)F3$\"&)pLF37$$\"0Djy(eIs%)F3$\"&R!HF37$$\"0 gxn)*))z%)F3$\"&5&GF37$$\"0DEF'=o$[)F3$\"&* HIF37$$\"0g!odQZ([)F3$\"&m#HF37$$\"0!\\j_eE\"\\)F3$\"&RM#F37$$\"0D*eZy 0&\\)F3$\"&[+#F37$$\"0gVD%)\\))\\)F3$\"&ec#F37$$\"0$z\\P=k-&)F3$\"&rp# F37$$\"0?`0))3/^)F3$\"&(\\CF37$$\"0X3O#f<=&)F3$\"&01#F37$$\"05O^Wf?_)F 3$\"&&y;F37$$\"0qjm'H%f_)F3$\"&C%=F37$$\"0N\">)[E)H&)F3$\"&$)=#F37$$\" 0+>(4+rL&)F3$\"&)z=F37$$\"0lY7`$fP&)F3$\"&$[>F37$$\"0IuF0x9a)F3$\"&@T# F37$$\"0!>Iu0OX&)F3$\"&#[EF37$$\"0bHe4W#\\&)F3$\"&e?#F37$$\"0?dthFJb)F 3$\"&EN\"F37$$\"0![))Q6,d&)F3F[[n7$$\"0X7/m%*3c)F3$\"&(35F37$$\"05S>=y Zc)F3$\"&xq\"F37$$\"0?hTNYef)F3$\"&CL\"F37$$\"0K#QEX\"pi)F3$\"%,\"*F37 $$\"0v'f&R-7j)F3$\"&O/\"F37$$\"0?6[E!\\N')F3$\"&eD\"F37$$\"0gDS8y(R')F 3$\"&*>8F37$$\"00SK+mSk)F3$\"&^9\"F37$$\"0]aC(QN[')F3$\"%L#)F37$$\"0!* o;uTEl)F3$\"%0aF37$$\"0I$)3hHpl)F3$\"%!\\%F37$$\"0v(4![<7m)F3$\"%sF37$$\"0?8QV?bp)F3$\"&A/\"F37$$\"00UA<'4/()F3$ \"%6qF37$$\"0!4n5>n7()F3$\"%JQF37$$\"0!)*4\\wC@()F3$\"%s]F37$$\"0lGvQB )H()F3$\"%,pF37$$\"05VnD6Tt)F3$\"%,kF37$$\"0]df7*RQ()F3$\"%jeF37$$\"0! ><&*poU()F3$\"%)*eF37$$\"0N'Qk[(pu)F3$\"%plF37$$\"0!3gLFE^()F3$\"%&e(F 37$$\"0?:Gg]bv)F3$\"%-$)F37$$\"0lH?ZQ)f()F3$\"%v#)F37$$\"02W7METw)F3$ \"%SuF37$$\"0v?4PVi#))F3$\"%_kF37$$\"0Z(f+/O))))F3$\"%'*RF37$$\"05)4v> C/*)F3$\"%kXF37$$\"0v)f\\N7?*)F3$\"%!R&F37$$\"0S*4C^+O*)F3$\"%BLF37$$ \"0++')p')=&*)F3$\"%kCF37$$\"0I,w%)\\O)*)F3$\"%qKF37$$\"0c-m*HT:!*F3$ \"%MWF37$$\"0!))y[TcJ!*F3$\"%$H$F37$$\"00v4I:x/*F3$\"%U@F37$$\"0IhJXmQ 1*F3$\"%(f#F37$$\"0bZ`g<+3*F3$\"%0IF37$$\"0qS9=$4)3*F3$\"%'z#F37$$\"0! Q`d(oh4*F3$\"%hFF37$$\"0!piLVC/\"*F3$\"%!)GF37$$\"00?(4*>B6*F3$\"%HKF3 7$$\"0gmxpdj6*F3F]`r7$$\"0?8e[&R?\"*F3Fjgo7$$\"0vfQFLW7*F3$\"%)f$F37$$ \"0I1>1r%G\"*F3$\"%tNF37$$\"0S**zjYl8*F3$\"%\"G$F37$$\"0`#49AiW\"*F3$ \"%%y#F37$$\"0gz*R_/_\"*F3$\"%?BF37$$\"0lmeEo%f\"*F3$\"%,?F37$$\"0q`F37$$\"0!3k*F3$\"%LDF37$$\"05*=@k+/#*F3Fb[r 7$$\"0SPZ_)pL#*F3$\"%#f#F37$$\"0l&GG1Rj#*F3$\"%#F37$$\"0V0=\"R***Q*F3$\"%0CF37$$\"0XzX!QS@%*F3$\"% 2>F37$$\"0X`tp8GX*F3$\"&Mi\"FA7$$\"0XF,fBU[*F3$\"&X\"=FA7$$\"0Y,H[Lc^* F3$\"&^v\"FA7$$\"0X\"oE6$Ge*F3$\"&cq\"FA7$$\"0[h/xG+l*F3$\"&-c\"FA7$$ \"0QY(*yE'o(*F3$\"&!G:FA7$$\"0!3;%Gka!**F3$\"&0S\"FA7$$\"0y9t&\\*G+\"! #8$\"&xS\"FA7$$\"0'3?\"=8^,\"Ffev$\"&eJ\"FA7$$\"0Wb,\"yR=5Ffev$\"&')R \"FA7$$\"0,5\"RCo@5Ffev$\"&zS\"FA7$$\"0ek!oq'\\-\"Ffev$\"&HQ\"FA7$$\"0 ;>qp^#G5Ffev$\"&AR\"FA7$$\"0qI*Gv%[.\"Ffev$\"&![7FA7$$\"0CU3OV9/\"Ffev $\"&y;\"FA7$$\"02o;#eW`5Ffev$\"&+8\"FA7$$\"0m<>!>>m5Ffev$\"&Y-\"FA7$$ \"0.%\\I3jy5Ffev$\"%#***FA7$$\"0F*HgZ6#4\"Ffev$\"%>!*FA7$$\"0n:&3@y.6F fev$\"%<))FA7$$\"0'46#[#=<6Ffev$\"%u&)FA7$$\"0Vrx`z(H6Ffev$\"%^*)FA7$$ \"0!>h>\\DU6Ffev$\"%a#)FA7$$\"0#=rD-ua6Ffev$\"%p()FA7$$\"0FBwWuu;\"Ffe v$\"%X\"*FA7$$\"08=&4D(4=\"Ffev$\"%#e*FA7$$\"0ej(4m1%=\"Ffev$\"&6+\"FA 7$$\"0-4+rgr=\"Ffev$\"&90\"FA7$$\"0Za-\"[D!>\"Ffev$\"&24\"FA7$$\"0#** \\5*[L>\"Ffev$\"&J/\"FA7$$\"0cVZ=.k>\"Ffev$\"%N(*FA7$$\"0@()*euX*>\"Ff ev$\"&Q2\"FA7$$\"0'3BL<^-7Ffev$\"%f!*FA7$$\"0]uu+mb?\"Ffev$F[^lFA7$$\" 0CC>\\)>27Ffev$\"%Y'*FA7$$\"0)RPw4$)37Ffev$\"&+1\"FA7$$\"0sB3Yj/@\"Ffe v$\"&w?\"FA7$$\"0Yt_%f477Ffev$\"&*y8FA7$$\"0?B(H%GP@\"Ffev$\"&n\\\"FA7 $$\"0%H<94O:7Ffev$\"&=Y\"FA7$$\"0oA')R$*p@\"Ffev$\"&AA\"FA7$$\"0VsI)ei =7Ffev$\"%b%)FA7$$\"0AYP\"[D?7Ffev$\"%dbFA7$$\"0+?Wu$)=A\"Ffev$\"%/kFA 7$$\"0*ov4#)pA7Ffev$\"%2')FA7$$\"0y$4vE^B7Ffev$\"&w8\"FA7$$\"0oI/9FVA \"Ffev$\"&fK\"FA7$$\"0dndgT^A\"Ffev$\"&%*=\"FA7$$\"0Y/62cfA\"Ffev$\"&D 2\"FA7$$\"0OTk`qnA\"Ffev$\"&G2\"FA7$$\"0Dy<+&eF7Ffev$\"&q@\"FA7$$\"09: rY*RG7Ffev$\"&FY\"FA7$$\"0#*)y(RG+B\"Ffev$\"&F*>FA7$$\"0ri%GtlJ7Ffev$ \"&jC#FA7$$\"0V9ld0vB\"Ffev$\"&2p\"FA7$$\"0:mX#QNV7Ffev$\"%s:FA7$$\"0] qo-%=W7Ffev$!%S@FA7$$\"0'[ " 0 "" {MPLTEXT 1 0 204 "de := \+ diff(y(x),x)=4*y(x)*cos(x)/(4+3*sin(2*y(x)));\nic := y(0)=1;\ngn2 := d esolveRK(\{de,ic\},y(x),x=0..4*Pi,method=rk67b,output=rkstep);\nevalf[ 15](plot('gn2'(x)-g(x),x=0..4*Pi,color=magenta,numpoints=100));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\" \"%\"\"\"F)F0-%$cosGF+F0,&F/F0*&\"\"$F0-%$sinG6#,$*&\"\"#F0F)F0F0F0F0! \"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 715 153 153 {PLOTDATA 2 "6&-%'CURVESG6#7[ [l7$$\"\"!F)F(7$$\"0\"*)\\.R0G8!#:F(7$$\"0pnQ]'e$[#F-$\"$F\"!#97$$\"0N kjw.Jy$F-$\"$w#F37$$\"0HCG2N74&F-$\"$-'F37$$\"0l+&pNr;aF-$\"$P'F37$$\" 0+xh1#>UdF-$\"$.(F37$$\"0?:XJJ\\!fF-$\"$&*)F37$$\"0N`Gcqw1'F-$\"%P6F37 $$\"0b\">6)4/B'F-$\"%y6F37$$\"0rH&f!\\JR'F-$\"%A7F37$$\"0+j1_pm*pF-$\" %()>F37$$\"0G'z\")**=+wF-$\"%dIF37$$\"0N8>AXE\"zF-$\"%/MF37$$\"0SI?Y+^ A)F-$\"%wZF37$$\"0!*)3#3G8Q)F-$\"%-^F37$$\"0XZ@qbv`)F-$\"%&\\&F37$$\"0 qw@^pch)F-$\"%pfF37$$\"0+1AK$y$p)F-$\"%*)yF37$$\"0g?sASGt)F-$\"&m0\"F3 7$$\"0DNA8(*=x)F-$\"&%*e\"F37$$\"0!*\\s.a4\"))F-$\"&)4=F37$$\"0_kA%4,] ))F-$\"&([=F37$$\"0Sl&)f_J<*F-$\"&RB#F37$$\"0Im[D%H'\\*F-$\"&)*z#F37$$ \"0v;I3lyl*F-$\"&_=$F37$$\"0?n6\"fV>)*F-$\"&2n$F37$$\"0SU_K@-!**F-$\"& !zRF37$$\"0l<$Rn+\")**F-$\"&tK%F37$$\"0HR`@zh+\"F3$\"&6j%F37$$\"0\"ouc xD95F3$\"&e\"\\F37$$\"0O#fBIOI5F3$\"&lD&F37$$\"0!zV!Hok/\"F3$\"&.J&F37 $$\"0X$GdNdi5F3$\"&80&F37$$\"0+HT#)y'y5F3$\"&0h%F37$$\"0bu44%y%4\"F3$ \"&p8%F37$$\"05?yN*)36\"F3$\"&6 :*)*4V6F3$\"&xB$F37$$\"0M!f%QKi<\"F3$\"&*))GF37$$\"0\\pw([O47F3$\"&>i# F37$$\"0k[2P(\\U7F3$\"&_U#F37$$\"0zFQ')HcF\"F3$\"&gF#F37$$\"0\"[q*4'*R L\"F3$\"&))3#F37$$\"0$=eNBO#R\"F3$\"&D'>F37$$\"08m2XvP_\"F3$\"&**p\"F3 7$$\"0HF3;Gdl\"F3$\"&4a\"F37$$\"0#Q@Z!*)Gy\"F3$\"&qR\"F37$$\"0n0*)=1,z \"F3$\"&!y8F37$$\"0_(fILK(z\"F3$\"&tK\"F37$$\"0P*Gs/a/=F3$\"&QI\"F37$$ \"0A\")Rhd<\"=F3$\"&_J\"F37$$\"0#\\O(*=>E=F3$\"&-M\"F37$$\"0i[2=E1%=F3 $\"&nO\"F37$$\"0ZSCKVy%=F3$\"&#y8F37$$\"0KKTYg]&=F3$\"&SQ\"F37$$\"0F3$\"&G@\"F37$$\"0T60N=q'>F3$\"&5T\"F37$$\" 0So&4@=%)>F3$\"&&3:F37$$\"0SD'oeM,?F3$\"&&eF37$$\"0!4@2:4F?F3$\"&7[#F37$$\"0SRnQtc.#F3$ \"&R2$F37$$\"0#*HtH`Z1#F3$\"&xi$F37$$\"0W?z?LQ4#F3$\"&;$RF37$$\"0EWn>o u4#F3$\"&*\\RF37$$\"02ob=.65#F3$\"&?'RF37$$\"0)=Ru\"QZ5#F3$\"&^(RF37$$ \"0q:K;t$3@F3$\"&0&RF37$$\"0Lj39Vc6#F3$\"&X'QF37$$\"0'4^=J\"H7#F3$\"&4 s$F37$$\"0A1Q2`u8#F3$\"&@M$F37$$\"0[,\"HI*>:#F3$\"&/&HF37$$\"0()zOX1*o @F3$\"&Fa#F37$$\"0Ee#y)>e=#F3$\"&y?#F37$$\"0lOGILF?#F3$\"&*G>F37$$\"0/ :usY'>AF3$\"&Wo\"F37$$\"0#=dwNZ`AF3$\"&^H\"F37$$\"0fGdU+tG#F3$\"&p.\"F 37$$\"069AT&=ZBF3$\"%dbF37$$\"0j*p)RqqS#F3$\"%8UF37$$\"0-M,stFZ#F3$\"% &H$F37$$\"0So:/x%QDF3$\"%yEF37$$\"0)f0T@/,EF3$\"%>BF37$$\"0cV0C2Om#F3$ \"%=?F37$$\"0EahZnTz#F3$\"%u:F37$$\"0[R*GD19HF3$\"%08F37$$\"0NF1a&QVIF 3$\"%/6F37$$\"0w+U!erxJF3$\"%^&*F-7$$\"0XHNp]YH$F3$\"%w&)F-7$$\"0USvdV 4U$F3$\"%3zF-7$$\"0L\"\\%[;9b$F3$\"%#Q(F-7$$\"0:'\\p(e!zOF3$\"%RrF-7$$ \"0J#[V#fD!QF3$\"%MpF-7$$\"0c*ejaoRRF3$\"%;oF-7$$\"0%4Hr%**G1%F3$\"%6l F-7$$\"0_:SscW>%F3$\"%+hF-7$$\"0OO#[rm8VF3$\"%UeF-7$$\"0,4&Hc*RW%F3$\" %AcF-7$$\"0_]OdCmc%F3$\"%f\\F-7$$\"0b-U:2[p%F3$\"%E\\F-7$$\"0wMj0H,#[F 3$\"%:TF-7$$\"0yPOZH8&\\F3$\"%;TF-7$$\"02S!p5px]F3$\"%'e$F-7$$\"0_[609 p?&F3$\"%pNF-7$$\"0%=s,q1N`F3$\"%xKF-7$$\"0:[QDEGX&F3$\"%RLF-7$$\"0o4f k\"z(e&F3$\"%\\MF-7$$\"0k.:I1&3dF3$\"%ePF-7$$\"0-)3-L@PeF3$\"%TSF-7$$ \"0\\!HCBSgfF3$\"%N_F-7$$\"0kB=!z=(4'F3$\"%AeF-7$$\"0VR7;Mc@'F3$\"%mvF -7$$\"0f;^sr+N'F3$\"$Z)F37$$\"0gW+(pfskF3$\"$s*F37$$\"0n$QK.i1mF3$\"%) >\"F37$$\"0*o=G)fAs'F3$\"%f:F37$$\"0vv=x4\")y'F3$\"%u=F37$$\"0gkbrfR&o F3$\"%jAF37$$\"0b)G5vcA\"F37$$\"0:\"3JOsjrF3$\"&i^\"F37$$\"0+;c!> onrF3$\"&b6#F37$$\"0!3:!=S;<(F3$\"&\"pBF37$$\"05!HyKZ(=(F3$\"&%)f#F37$ $\"0XHkP1L?(F3$\"&.(GF37$$\"0!)oXZR\">sF3$\"&r=$F37$$\"083Fds\\B(F3$\" &&)f$F37$$\"0+(GBK=]sF3$\"&<2%F37$$\"0!f'Q(QRlsF3$\"&%eYF37$$\"0Nb\"*> **HF(F3$\"&8+&F37$$\"0![WCXg!G(F3$\"&)GaF37$$\"0?M(\\)4#)G(F3$\"&$*y&F 37$$\"0lB]<:eH(F3$\"&D8'F37$$\"0]-c#e-6tF3$\"&Oj'F37$$\"0S\"=wkBEtF3$ \"&'[nF37$$\"0Ign7Z9M(F3$\"&%=lF37$$\"0=RtxdmN(F3$\"&&HgF37$$\"0&*)QN$ z[O(F3$\"&'RdF37$$\"0qQM*35ttF3$\"&0T&F37$$\"0X)[^CK\"Q(F3$\"&!\\^F37$ $\"0?Q&4Sa*Q(F3$\"&/)[F37$$\"0qPc7()fS(F3$\"&F37$$\"0!4'3psu%zF3$\"&R+#F37$$\"0]$y$ytR' zF3$\"&i,#F37$$\"0![CIVAszF3$\"&+-#F37$$\"051n([Z!)zF3$\"&(=?F37$$\"0S nJUD())zF3$\"&U+#F37$$\"0qG'pf(p*zF3$\"&H'>F37$$\"0?HDEF4+)F3$\"&s#>F3 7$$\"0qHaby[+)F3$\"&c(=F37$$\"0?I$[)H)3!)F3$\"&1(=F37$$\"0lI79\"y7!)F3 $\"&f(=F37$$\"0gJqs$o?!)F3$\"&m)=F37$$\"0gKGJ'eG!)F3$\"&w*=F37$$\"0gMW [\"RW!)F3$\"&C#>F37$$\"0bOgl'>g!)F3$\"&a%>F37$$\"0]P=C*4o!)F3$\"&%\\>F 37$$\"0]Qw#=+w!)F3$\"&p$>F37$$\"0]RMT/R3)F3$\"&'))=F37$$\"0]S#**p!=4)F 3$\"&:'=F37$$\"0XU3<7w5)F3$\"&$**=F37$$\"0VWCMF37$$\"0SIJ p+88)F3$\"&J'>F37$$\"0N;Q/%=R\")F3$\"&7)>F37$$\"0I-XRnq9)F3$\"&t)>F37$ $\"0I)=X2&\\:)F3$\"&n'>F37$$\"0Due4MG;)F3$\"&b*=F37$$\"0?glW<2<)F3$\"& bv\"F37$$\"0?.>7fY<)F3$\"&Du\"F37$$\"0?Ysz+'y\")F3$\"&rv\"F37$$\"0?*es Ca#=)F3$\"&Dx\"F37$$\"0:Kz9%['=)F3$\"&$)y\"F37$$\"0+w1bF 37$$\"0&)>M&4b\\#)F3$\"&N?#F37$$\"0I7TL>gE)F3$\"&@O#F37$$\"0q/[r([#G)F 3$\"&pn#F37$$\"0!4:0>s!H)F3$\"&by#F37$$\"05(\\&4c*)H)F3$\"&]!HF37$$\"0 ?q1>tII)F3$\"&H)HF37$$\"0IVeG!>2$)F3$\"&%=JF37$$\"0S;5Q28J)F3$\"&LW$F3 7$$\"0b*=wWU:$)F3$\"&g8%F37$$\"0+#)o&G*=L)F3$\"&yb%F37$$\"0SuvBh$[$)F3 $\"&2+&F37$$\"0&oE='H[O)F3$\"&&Q_F37$$\"0Ff*)*zH\"Q)F3$\"&i[&F37$$\"0g w(yfY'R)F3$\"&0S&F37$$\"0&RfeRj6%)F3$\"&l'\\F37$$\"0I6%Q>!oU)F3$\"&!*R %F37$$\"0gG#=*p>W)F3$\"&B&QF37$$\"0!f/)*y8d%)F3$\"&SP$F37$$\"0Djy(eIs% )F3$\"&E(HF37$$\"0g!odQZ([)F3$\"&(REF37$$\"0$z\\P=k-&)F3$\"&4M#F37$$\" 0+>(4+rL&)F3$\"&e'=F37$$\"05S>=yZc)F3$\"&Wc\"F37$$\"0?hTNYef)F3$\"&=F \"F37$$\"0K#QEX\"pi)F3$\"%T!*F37$$\"0?8QV?bp)F3$\"%voF37$$\"02W7METw)F 3$\"%/bF37$$\"0Z(f+/O))))F3$\"%7SF37$$\"0c-m*HT:!*F3$\"%lJF37$$\"0`#49 AiW\"*F3$\"%8EF37$$\"0l&GG1Rj#*F3$\"%\\AF37$$\"0V0=\"R***Q*F3$\"%l>F37 $$\"0Y,H[Lc^*F3$\"&#eqp^#G5Fddo$\"&AD\"F-7$$\"0CU3OV9/ \"Fddo$\"&(z6F-7$$\"02o;#eW`5Fddo$\"&e9\"F-7$$\"0m<>!>>m5Fddo$\"&))4\" F-7$$\"0.%\\I3jy5Fddo$\"&k2\"F-7$$\"0F*HgZ6#4\"Fddo$\"&A,\"F-7$$\"0n:& 3@y.6Fddo$\"%9**F-7$$\"0'46#[#=<6Fddo$\"%a$*F-7$$\"0Vrx`z(H6Fddo$\"%a) )F-7$$\"0!>h>\\DU6Fddo$\"%\"Fddo$\" %d)*F-7$$\"0]uu+mb?\"Fddo$\"&s0\"F-7$$\"0VsI)ei=7Fddo$\"&59\"F-7$$\"0r i%GtlJ7Fddo$\"&=K\"F-7$$\"0:mX#QNV7Fddo$\"&eW\"F-7$$\"0*eVhqjc7Fddo$\" &+s\"F--%'COLOURG6&%$RGBG$\"*++++\"!\")F(F_[p-%+AXESLABELSG6$Q\"x6\"Q! Ff[p-%%VIEWG6$;F($\"0#fVhqjc7Fddo%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph compares the two methods of interpolation in terms of their errors. The discrete points give the errors at the interpola tion points whose horizontal location is determined by extracting the \+ " }{TEXT 284 1 "x" }{TEXT -1 38 " coordinates from a discrete solution ." }}{PARA 0 "" 0 "" {TEXT -1 74 "The error curve for the polynomial i nterpolation obtained via the option \"" }{TEXT 262 15 "output=rkinter p" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" }{TEXT -1 107 " \+ while the error curve for interpolation obtained by performing Runge-K utta steps obtained via the option \"" }{TEXT 262 13 "output=rkstep" } {TEXT -1 15 "\" is shown in " }{TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 586 "de := diff(y(x),x)=4*y(x)*cos(x)/(4+3*sin(2*y(x)));\nic := y(0) =1;\ngn1 := desolveRK(\{de,ic\},x=0..8.6,method=rk67b,output=rkinterp) :\ngn2 := desolveRK(\{de,ic\},x=0..8.6,method=rk67b,output=rkstep):\np ts := desolveRK(\{de,ic\},x=0..8.6,method=rk67b,output=points):\npts2 \+ := [seq([pts[i,1],evalf[18](gn2(pts[i,1])-g(pts[i,1]))],i=1..nops(pts) )]:\np1 := plot([pts2$3],style=point,symbol=[circle,diamond,cross],col or=[black,coral$2]):\np2 := evalf[18](plot(['gn1'(x)-g(x),'gn2'(x)-g(x )],x=8..8.5,\n color=[blue,magenta],numpoints=100)):\nplot s[display]([p1,p2],view=[8..8.5,-3e-10..8e-10]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"%\"\"\"F)F0-%$c osGF+F0,&F/F0*&\"\"$F0-%$sinG6#,$*&\"\"#F0F)F0F0F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 674 289 289 {PLOTDATA 2 "6)-%'CURVESG6&7ds7$$\"\"!F)F(7$$ \"3-+++++++5!#>$!3q*************>&!#L7$$\"3y**************fF-$!3%***** ********p7!#K7$$\"3!******fU8;O#!#=$\"33+++++8Y7!#H7$$\"3C+++LSQ_PF:$ \"3=+++++#[v#F=7$$\"3))*****41-P&\\F:$\"3G+++++LweF=7$$\"3y*****zZ(etf F:$\"3$*********4/;6!#G7$$\"3\\+++!Gz%GoF:$\"3-++++!3B!>FM7$$\"3*)**** ****=_UvF:$\"3I+++++'=+$FM7$$\"3U+++'RX\"\\\")F:$\"31+++++1LYFM7$$\"3Y +++23S\"y)F:$\"3)********zw8y\"!#F7$$\"3!)*****RU7#**F:$ \"32++++!*)[5%F\\o7$$\"3-+++F#*z05!#<$\"3#)*******\\?rh%F\\o7$$\"3++++ @x\"p,\"Fip$\"33++++l6')\\F\\o7$$\"3*******p[?%G5Fip$\"3I++++OGB_F\\o7 $$\"30+++^M#*Q5Fip$\"3g*******4ElK&F\\o7$$\"3/+++P&e$\\5Fip$\"3i****** *z!p(G&F\\o7$$\"3)******>/c/1\"Fip$\"3!)*******zY()4&F\\o7$$\"3)****** z))yG2\"Fip$\"3;++++'fjw%F\\o7$$\"3#******p(ed(3\"Fip$\"3!)********f,@ VF\\o7$$\"3*)*****45on5\"Fip$\"3w*******4()**y$F\\o7$$\"3)******RF&eM6 Fip$\"3#**********z%pLF\\o7$$\"3++++fyZi6Fip$\"33++++$[3/$F\\o7$$\"3!* *****R))H;>\"Fip$\"3!)*******z*HjFF\\o7$$\"36+++n;wC7Fip$\"3y*******4C !GDF\\o7$$\"3!******R;NLE\"Fip$\"3)*********=3GBF\\o7$$\"3'******4xA\" 48Fip$\"3'********>(zd@F\\o7$$\"3%******H^xZO\"Fip$\"3%********p'=6?F \\o7$$\"3-+++B***eV\"Fip$\"31++++X:o=F\\o7$$\"3-+++9Wl\"F\\o7$$\"34+++3mC@;Fip$\"37++++gkE:F\\o7$$\"3%******\\vO$=caM\"F\\o7$$\"35+++GK))*z\"Fip$\"3'********HhoH\"F\\o7$$ \"35++++wr%)=Fip$\"3/++++vAs5F\\o7$$\"33++++s6F>Fip$\"35++++Ba%>\"F\\o 7$$\"3)******po\"pk>Fip$\"3-++++=X*R\"F\\o7$$\"31+++'pEo*>Fip$\"3#**** ****H@Fs\"F\\o7$$\"3++++a?WH?Fip$\"3+++++)>n'HF\\o7$$\"3z*****R5,]/#Fi p$\"3)*********e**\\KF\\o7$$\"3A+++fhbh?Fip$\"3C++++F[gNF\\o7$$\"3A+++ oB,!3#Fip$\"3&)*******4%*=u$F\\o7$$\"3%)*****fJ\"o\"4#Fip$\"33++++S([ \"RF\\o7$$\"31+++#\\IF5#Fip$\"3?++++re#)RF\\o7$$\"3))*****plyQ6#Fip$\" 3')**********y\"*QF\\o7$$\"3z******f]^C@Fip$\"3/++++AXxOF\\o7$$\"3**** ****>TEN@Fip$\"37++++\"p>S$F\\o7$$\"3)*******e&*pY@Fip$\"39++++#)R$4$F \\o7$$\"3')*****>zX&f@Fip$\"3-++++1'\\w#F\\o7$$\"3%******pid\\<#Fip$\" 35++++,:?CF\\o7$$\"3#*******4([e>#Fip$\"3$********p\"4L?F\\o7$$\"3>+++ 4!zAA#Fip$\"3*********\\k>i\"F\\o7$$\"3;+++'\\zvW3H#Fip$\"3]********HG[&*FM7$$\"3*********oE=M#Fip $\"3%)********>JpcFM7$$\"3'******zx,XR#Fip$\"3I++++g7wVFM7$$\"3A+++$HFip$\"3,++++?oR7FM7$$\"3 '*******fF>pIFip$\"3+++++I/Z5FM7$$\"3$******\\/LNA$Fip$\"3t********>^B !*F=7$$\"3#)*******4*Q(R$Fip$\"3L++++SxD!)F=7$$\"3?+++\\zM&f$Fip$\"3R* *******R<\"*[r&Fip$\" 3%*********>;5QF=7$$\"3O+++lYrjfFip$\"3%*********\\KZ`F=7$$\"31+++y%[e ?'Fip$\"3E********\\U7vF=7$$\"3g*****fvvWQ'Fip$\"3b+++++)Q#*)F=7$$\"3q *****pGX;a'Fip$\"31++++++46FM7$$\"3K+++J%f!ymFip$\"31++++qAj9FM7$$\"3S +++DGK&z'Fip$\"3')********poK?FM7$$\"3I+++Y(fY*oFip$\"3'*********H?%)G FM7$$\"3C+++GZ\"y(pFip$\"3)*********4CtSFM7$$\"3M+++daKZqFip$\"3')**** *****)y(o&FM7$$\"3c*****\\?mn5(Fip$\"3S++++?&Q1)FM7$$\"3o*****zOC'orFi p$\"3@++++RsHBF\\o7$$\"3g*****R`eT>(Fip$\"3!)*******pNTq#F\\o7$$\"30++ +p*o\">sFip$\"3#)*******4Nv=$F\\o7$$\"3S+++=&z)RsFip$\"3%********4'GJP F\\o7$$\"3O+++:0*zD(Fip$\"3C++++GeeVF\\o7$$\"3A+++\"RDrF(Fip$\"3;++++e Fl_F\\o7$$\"39+++1c7!H(Fip$\"37++++LdweF\\o7$$\"3:+++Bq<,tFip$\"36++++ W`LjF\\o7$$\"3d******fX`7tFip$\"3:++++4MKmF\\o7$$\"3\"******Rv&*HK(Fip $\"31++++up]nF\\o7$$\"3-+++lQo'F\\o7$$\"3N+++LhkW tFip$\"3\\++++H4HkF\\o7$$\"3o*****p\")=sN(Fip$\"3q*******>-;+'F\\o7$$ \"3e*****R\\#=stFip$\"3D++++2lSaF\\o7$$\"3')*****\\az>R(Fip$\"3k****** **GBuZF\\o7$$\"3h*****z2$e>uFip$\"3=++++=QLUF\\o7$$\"3i*****\\VitW(Fip $\"3x*******4\"Q2QF\\o7$$\"3/+++c^rwuFip$\"3%)********)=lX$F\\o7$$\"3G +++Jk85vFip$\"3-++++V\"4;$F\\o7$$\"3')*****Rd&4\\vFip$\"3C++++([3\"HF \\o7$$\"3%)*****R6(R&f(Fip$\"3!********HA#*p#F\\o7$$\"3'******4v$y^wFi p$\"3#)*******pm*=DF\\o7$$\"3u*****zAVUs(Fip$\"3'********H^pM#F\\o7$$ \"3w*****zk%[F\\o7$$\"3k*****\\;Za+)Fip$\"3/++++0em=F\\o7$$\"3I*****pAUr3) Fip$\"3!********\\&>^=F\\o7$$\"3O*****H`_<<)Fip$\"3.++++@?K[%o8#)Fip$\"37++++L[F>F\\o7$$\"3o******z5o]#)Fip$\"3(********\\ $pFAF\\o7$$\"3g+++P-b#G)Fip$\"3A++++mF!o#F\\o7$$\"3$3++q+-[J)Fip$\"3>+ +++ZZ@TF\\o7$$\"3?******>rmF$)Fip$\"3?++++6`VWF\\o7$$\"3^+++hEDW$)Fip$ \"3u*******RW>)[F\\o7$$\"3u*****4>$zi$)Fip$\"3#********4jF>&F\\o7$$\"3 k*****fZ&fu$)Fip$\"3n*******>1p#oR)Fip$\"3))*******HH\\R&F\\o7$$\"3<*****4_nuS) Fip$\"3l*******f:]5&F\\o7$$\"39*****493#=%)Fip$\"3*)*******fAds%F\\o7$ $\"3'******4h@'H%)Fip$\"3)*********4\"oH%F\\o7$$\"3u+++woUU%)Fip$\"3!* ********HxQQF\\o7$$\"3%)*****4KjxX)Fip$\"3#********\\$QeLF\\o7$$\"3O** ***p3a%y%)Fip$\"3;++++U`FGF\\o7$$\"3j*****f2:\\])Fip$\"3!********H#*[F #F\\o7$$\"3N*****H\"fHM&)Fip$\"3))*********RG&=F\\o7$$\"3W*****4tcId)F ip$\"3'********p#p19F\\o7$$\"3k*************f)Fip$\"31++++QH\\7F\\o-%' COLOURG6&%$RGBGF)F)F)-%'SYMBOLG6#%'CIRCLEG-%&STYLEG6#%&POINTG-F$6&F&-F `fm6&Fbfm$\"*++++\"!\")$\")AR!)\\FagmF(-Fdfm6#%(DIAMONDGFgfm-F$6&F&F]g m-Fdfm6#%&CROSSGFgfm-F$6$7]^l7$$\"\")F)$\")snD@Fip7$$\"3IHHHz?k-!)Fip$ \")%RX&>Fip7$$\"3feeeeTG0!)Fip$\")IFk=Fip7$$\"3:::lFip7$$\"3?>>WIX<6!)Fip$\")')pA>Fip7$$ \"3lmm;%=nC,)Fip$\")PnH>Fip7$$\"3:99*y$)fP,)Fip$\")3TJ>Fip7$$\"3ihhh\" \\_],)Fip$\")8EG>Fip7$$\"3:;;;O\\lFip7$$\"3rqqq!Qd--)Fip $\")'zj)=Fip7$$\"3!)yyGcu%G-)Fip$\")TS-.)Fip$\")(\\*\\=Fip7$$ \"3qpppuI@N!)Fip$\"),\"y'=Fip7$$\"3IHHHaXyP!)Fip$\")i(H(=Fip7$$\"3*))) )))Q.c./)Fip$\")b`q=Fip7$$\"3qrrrm#>H/)Fip$\")k&)f=Fip7$$\"3baaa*\\#[X !)Fip$\")z[V=Fip7$$\"3522d*4>\"[!)Fip$\")K\"o#=Fip7$$\"3gfff*pb20)Fip$ \")CR>=Fip7$$\"3]YY'*eo\">0)Fip$\")p!=#=Fip7$$\"3NLLL=!yI0)Fip$\")j,H= Fip7$$\"3???qx\"RU0)Fip$\")!))=%=Fip7$$\"32222P.Sb!)Fip$\")J>h=Fip7$$ \"3&HHHzr9!e!)Fip$\")^Fip7$$\"3zyyy)4H11)Fip$\")R&*R?Fip7$$\"3IIIII $ze1)Fip$\")\"QK!>Fip7$$\"3qnFip7 $$\"3FFFF#z354)Fip$\")^&z5#Fip7$$\"3]ZZAm,?#4)Fip$\")e!\\>#Fip7$$\"3qn nFip7$$\"3qpppk:)f5)Fip$\"))*zT9Fip7$$\"3bbb0y*y&3\")Fip$\")$*))*G\" Fip7$$\"3TTTT\"Rw66)Fip$\")zNC7Fip7$$\"3!33e&4!pB6)Fip$\"))G1A\"Fip7$$ \"3???qF;c8\")Fip$\")t;I7Fip7$$\"3gff%eCaZ6)Fip$\")Xt\\7Fip7$$\"3**)*) *)R'o%f6)Fip$\")@pv7Fip7$$\"3011cj'>&=\")Fip$\")7\\N8Fip7$$\"38888jC4@ \")Fip$\")$)[r8Fip7$$\"3?AA(4nGC7)Fip$\"))>;P\"Fip7$$\"3IJJ\")y[wB\")F ip$\")T;c8Fip7$$\"3SSSl'3,^7)Fip$\")YoC8Fip7$$\"3]\\\\\\%HPk7)Fip$\")) \\$y7Fip7$$\"3????SOwG\")Fip$\");cr6Fip7$$\"3\"444f)**3J\")Fip$\")'ec0 \"Fip7$$\"3qqqXWiMK\")Fip$\")rn-5Fip7$$\"3]]]+.DgL\")Fip$\"(col*Fip7$$ \"3IIIbh(e[8)Fip$\"(b__*Fip7$$\"35555?]6O\")Fip$\"(!37(*Fip7$$\"35666' p5(Q\")Fip$\")$zO9\"Fip7$$\"37777sjIT\")Fip$\")kmV:Fip7$$\"3!444M0wD9) Fip$\");qL=Fip7$$\"3qpppMd%Q9)Fip$\")$ev=#Fip7$$\"3][[)fT:^9)Fip$\")0I .EFip7$$\"3FFFF(4&QY\")Fip$\")T)f2$Fip7$$\"3XXX?zNhZ\")Fip$\")m#)zNFip 7$$\"3ljj8h?%)[\")Fip$\")0#)=TFip7$$\"3!==oIaq+:)Fip$\")eVzYFip7$$\"3+ +++D!*H^\")Fip$\")gkFip7$$\"3XXX?%3\"Rb\")Fip$\")nK.pFip7$$\"3%RRRR5bn:)Fip $\")(GTF(Fip7$$\"3&QQQjt!)z:)Fip$\"))pN[(Fip7$$\"3vtttoj?f\")Fip$\")I- `vFip7$$\"3ljj8,?Vg\")Fip$\")j=kuFip7$$\"3a```Lwlh\")Fip$\")%)\\/sFip7 $$\"3qsssdi'H;)Fip$\")`\"Rt'Fip7$$\"3!>>>>)[Fk\")Fip$\")UasgFip7$$\"3] ^^,%>H\\;)Fip$\")o9ycFip7$$\"356661Nel\")Fip$\"),I[_Fip7$$\"3qqq?=yBm \")Fip$\")5P!z%Fip7$$\"3IIIII@*o;)Fip$\")lk8VFip7$$\"3qo=JM][n\")Fip$ \")+%\\(QFip7$$\"3522KQz2o\")Fip$\")nJSMFip7$$\"3]X&HB%3no\")Fip$\")#* o@IFip7$$\"3&QQQjuj#p\")Fip$\")B(Gj#Fip7$$\"3gggNa&\\/<)Fip$\")$p/,#Fi p7$$\"3PPPPi`jr\")Fip$\"))>$G)Fip$\")27)z\"Fip7$$\"3::::Sr+(>)Fip$\")A4 H=Fip7$$\"3GGGG3\\.-#)Fip$\")Mtg=Fip7$$\"3!GGGyr0Y?)Fip$\")!Qd)=Fip7$$ \"3PPPPFl<2#)Fip$\")2l5>Fip7$$\"3gffM)G^%3#)Fip$\")!>%>>Fip7$$\"3!===$ \\gs4#)Fip$\")w3C>Fip7$$\"30//H53+6#)Fip$\"):ZC>Fip7$$\"3EEEErbF7#)Fip $\")(zB#>Fip7$$\"3lkk9<$=Y@)Fip$\")KnI>Fip7$$\"3....j5'p@)Fip$\")[mD>F ip7$$\"3?>>>9hk>#)Fip$\")p63>Fip7$$\"3NNNNl6LA#)Fip$\")7!o*=Fip7$$\"3q ttBO>`B#)Fip$\")$*e)*=Fip7$$\"357772FtC#)Fip$\")9:1>Fip7$$\"3]]]+yM$fA )Fip$\")/()>>Fip7$$\"3*)))))))[U8F#)Fip$\"):[R>Fip7$$\"3!333Lz%pH#)Fip $\")B#e*>Fip7$$\"3tsssP`DK#)Fip$\")h&f0#Fip7$$\"3544f@2[L#)Fip$\")o%*y ?Fip7$$\"3XXXX0hqM#)Fip$\")Ai%4#Fip7$$\"3!===$*[JfB)Fip$\")\"R55#Fip7$ $\"3====to:P#)Fip$\")0C(4#Fip7$$\"3IGGyN\"y)R#)Fip$\")emc?Fip7$$\"3QQQ Q)R*fU#)Fip$\")qX.?Fip7$$\"3NOO60wxV#)Fip$\")Vq#*>Fip7$$\"3NMM%=\"e&\\ C)Fip$\")C*z*>Fip7$$\"3IKKd=S8Y#)Fip$\")$4P-#Fip7$$\"3IIIIDAJZ#)Fip$\" )&)fq?Fip7$$\"3+)zz/]\\'[#)Fip$\")8wT@Fip7$$\"3llllvn)*\\#)Fip$\")-M2A Fip7$$\"3NLL$30C8D)Fip$\")0mFAFip7$$\"3,,,,E8m_#)Fip$\")YP6AFip7$$\"3! 44fr5!)QD)Fip$\")-.&>#Fip7$$\"3!333$))))4b#)Fip$\")V%R=#Fip7$$\"3qqqXp wJc#)Fip$\")KHy@Fip7$$\"3hggg]k`d#)Fip$\")CSx@Fip7$$\"3SRRk0'p)e#)Fip$ \")5)G=#Fip7$$\"3?==ogF?g#)Fip$\")s_)>#Fip7$$\"3+(p>d\"f`h#)Fip$\")>%) GAFip7$$\"3wvvvq!pGE)Fip$\")\\)oF#Fip7$$\"3&HHHakp^E)Fip$\")(4iR#Fip7$ $\"35555?-Zn#)Fip$\")'*R?DFip7$$\"3NNNgT_7o#)Fip$\")9yXDFip7$$\"3ggg5j -yo#)Fip$\")=%Hc#Fip7$$\"3&ee3YGN%p#)Fip$\")')**pDFip7$$\"356661.4q#)F ip$\")LSlDFip7$$\"3ghh6\\.Sr#)Fip$\")TmCFip7$$\"3&eeeeET_F)Fip$\"),Hc@Fip7$$\"3gfffR@xx#)Fip$\"))))3.#Fip7$$ \"3]ZZ(*f8I!G)Fip$\")nGBBFip7$$\"3NNNN!eIGG)Fip$\")^6wEFip7$$\"3+--FQ0 4%G)Fip$\")e:hDFip7$$\"3qoo='\\]`G)Fip$\")rI[CFip7$$\"3+-_9v/)fG)Fip$ \")`O>CFip7$$\"3NNN5a/h'G)Fip$\")Au3CFip7$$\"3qo=1L/C(G)Fip$\")+X7CFip 7$$\"3----7/(yG)Fip$\")$QcU#Fip7$$\"3vuuCi7H!H)Fip$\")6-.DFip7$$\"3ZZZ Z7@r#H)Fip$\")*H)Fip$\")z'QV%Fip7$$\"3???q7.W+$)Fip$\")mG^ZF ip7$$\"3gh'Gp3_2I)Fip$\")h^)z%Fip7$$\"3+.`:hQ1,$)Fip$\")gWH[Fip7$$\"3S W>QNcP,$)Fip$\")P\\U[Fip7$$\"3&ee3'4uo,$)Fip$\")e?O[Fip7$$\"3qo=1e4J-$ )Fip$\")UkgZFip7$$\"3_^^^1X$HI)Fip$\")0!\\f%Fip7$$\"3b_-!>w!f.$)Fip$\" )$H*=VFip7$$\"3b``G=-\"Fip7$$\"3gg5[A(p'4$)Fip$!(#zC Fip7$$\"3+,^j\"zj-J)Fip$!(&zcFip7$$\"3+--_k*[(z-\"Fip7$$\"3SUUnLIM7$)Fip$\")$Q3R\"Fip7$$\"3gi7Do+k7$)Fip$ \")62&y\"Fip7$$\"3$GGGG5PHJ)Fip$\")[#**>#Fip7$$\"3:99k\"QlKJ)Fip$\")0( em#Fip7$$\"3XXXXgOf8$)Fip$\")#zr6$Fip7$$\"3!onn#R>#RJ)Fip$\")AFDNFip7$ $\"35333=-D9$)Fip$\")fQbQFip7$$\"3SRR*o\\yXJ)Fip$\")N$e1%Fip7$$\"3qqqq vn!\\J)Fip$\")U\"R7%Fip7$$\"3+--_a]B:$)Fip$\")^[JTFip7$$\"3NLLLLLc:$)F ip$\")n.RTFip7$$\"3geee[k(oJ)Fip$\")T))pTFip7$$\"3%QQQQc*==$)Fip$\")es ,UFip7$$\"3]__-N]q?$)Fip$\")L+mUFip7$$\"3@@@@10AB$)Fip$\")DsIVFip7$$\" 38888.#R#G$)Fip$\")UhhWFip7$$\"3_^^^^7[L$)Fip$\")zn6YFip7$$\"3WWWWp$4$ Q$)Fip$\")7X+[Fip7$$\"3+**)RF`X&R$)Fip$\")-_j[Fip7$$\"3b``.'p\"yS$)Fip $\")$za#\\Fip7$$\"3!33$ox(*RT$)Fip$\")u)\\%\\Fip7$$\"3533Lfy,U$)Fip$\" )PR\\\\Fip7$$\"3NN&y4%fjU$)Fip$\")U[N\\Fip7$$\"3jiiiASDV$)Fip$\")5g1\\ Fip7$$\"3lmmTS_fV$)Fip$\")kQ*)[Fip7$$\"3qqq?ek$RM)Fip$\")*Qu([Fip7$$\" 3vuu*fnxUM)Fip$\")nx#)[Fip7$$\"3!)yyy$*)=YM)Fip$\"),a5\\Fip7$$\"3!poo$ H8IX$)Fip$\")wO&*\\Fip7$$\"3&\\\\\\\\w$)fM)Fip$\")\"4i/&Fip7$$\"35666O '[tM)Fip$\")'\\g+&Fip7$$\"3FFFF2Nr[$)Fip$\")'o&R\\Fip7$$\"3IHHz'RJ$\\$ )Fip$\")YYU\\Fip7$$\"3IJJJ'G\\*\\$)Fip$\")[In\\Fip7$$\"3ILL$eS'Fip7$$\"3IGG`>XNf$)Fip$\")5*)=mFip7$$\"3&fffM:(**f$)Fip$\")+9#o'F ip7$$\"3gjjQ(yR1O)Fip$\")FcKlFip7$$\"3IJJJ@CGh$)Fip$\")OAehFip7$$\"3+* *)R_0D>O)Fip$\")g0UcFip7$$\"3lmm;*onDO)Fip$\"))yvA&Fip7$$\"3NMM4B.@j$) Fip$\")4t+_Fip7$$\"3----dH&QO)Fip$\")h26_Fip7$$\"3baaazd@m$)Fip$\")#[ \"e_Fip7$$\"32222-'y&o$)Fip$\")ig/`Fip7$$\"3nmmm')fht$)Fip$\")'o+Q&Fip 7$$\"3!zyGm'3Cu$)Fip$\")$QjT&Fip7$$\"3544fYd'[P)Fip$\")EWLaFip7$$\"3II IbE1\\v$)Fip$\")nsNaFip7$$\"3]^^^1b6w$)Fip$\")$eVW&Fip7$$\"3&RRRkEltP) Fip$\")DdlaFip7$$\"3OOOOE]hy$)Fip$\")w)4Z&Fip7$$\"3+,,,\")=&*z$)Fip$\" ):IwaFip7$$\"3llllN()G\"Q)Fip$\"))e5[&Fip7$$\"3IIII!fDEQ)Fip$\")\\6]aF ip7$$\"3&\\\\\\\\WiRQ)Fip$\")AJ@aFip7$$\"3IEEEh@9&Q)Fip$\")@=*[&Fip7$$ \"3gdddx=K'Q)Fip$\")k8?bFip7$$\"3!*)))))Qf,vQ)Fip$\")+sHbFip7$$\"3???? 58o)Q)Fip$\")njEbFip7$$\"3!HHHzXU+R)Fip$\")cn-bFip7$$\"3llll0OS\"R)Fip $\")0EsaFip7$$\"3SQQQ`Zw#R)Fip$\")zbfaFip7$$\"36666,f7%R)Fip$\")CUpaFi p7$$\"3lkkkC#R!*R)Fip$\")=gv`Fip7$$\"3YYYY,2!RS)Fip$\")%>!\\_Fip7$$\"3 \"3333NG\"4%)Fip$\")?Kr]Fip7$$\"32222ZrP9%)Fip$\")y^#*[Fip7$$\"3]\\\\ \\uF:>%)Fip$\")R(Rp%Fip7$$\"3poooyUAC%)Fip$\")n[8XFip7$$\"36666rNPR Fip7$$\"3\"444fy7XW)Fip$\")$HDx$Fip7$$\"35555&*\\_\\%)Fip$\")h+%f$Fip7 $$\"3#====z)[a%)Fip$\")2MLMFip7$$\"3FFFFPlXf%)Fip$\")roZLFip7$$\"3==== BL_k%)Fip$\")?K+KFip7$$\"3DFFFx'3sY)Fip$\")yjUIFip7$$\"3OOOOJS*)p%)Fip $\")/))*)GFip7$$\"3XU#\\Ie40Z)Fip$\")lVvGFip7$$\"3][[tM^7r%)Fip$\")kFt GFip7$$\"3ba/U'oS9JIFip7$$\"3bcc1f*[ sZ)Fip$\")*yn#HFip7$$\"3GGGGt%z'z%)Fip$\"),%G%GFip7$$\"3+)zzHlxA[)Fip$ \")B+sHFip7$$\"3onnnKe([[)Fip$\")&R$\\IFip7$$\"3NOOOc$ou[)Fip$\")!>s#H Fip7$$\"30000!)31!\\)Fip$\")-(eb#Fip7$$\"3]^^,CyQ#\\)Fip$\")6am@Fip7$$ \"3)zzzzw9Z\\)Fip$\")$ot*>Fip7$$\"3+**)*)RQdt\\)Fip$\")SzsAFip7$$\"#&) !\"\"$\")t/dFFip-F`fm6&FbfmF(F(F_gm-F$6$7as7$F`hm$\")pwO>Fip7$Fehm$\") 6!p!>Fip7$Fjhm$\")x>p=Fip7$F_im$\")r@p=Fip7$Fdim$\")r4s=Fip7$Fhjm$\")^ yy=Fip7$Fb[n$\")'>e)=Fip7$F\\\\n$\"),8$*=Fip7$Ff\\n$\")q=+>Fip7$F[]n$ \")8x2>Fip7$Fe]n$\")S(e\">Fip7$F_^n$\").6C>Fip7$Fi^n$\")&*\\K>Fip7$F]` n$\"),UR>Fip7$Fg`n$\")<'e%>Fip7$F\\an$\")rP\\>Fip7$Ffan$\")GbZ>Fip7$Fj bn$\")=RQ>Fip7$Fdcn$\")lM7>Fip7$Ficn$\")^<%*=Fip7$F^dn$\")wQq=Fip7$Fcd n$\")WDi=Fip7$Fhdn$\")\"=N&=Fip7$F]en$\")Fip7$F]jn$\")IL@>Fip7$Fg jn$\")$Ga$>Fip7$F[\\o$\")tC]>Fip7$Fe\\o$\")<#G'>Fip7$Fi]o$\")$3^(>Fip7 $Fc^o$\")od%)>Fip7$Fg_o$\")Ys()>Fip7$Fa`o$\")d%e)>Fip7$F[ao$\")X%4)>Fi p7$Feao$\")&=6(>Fip7$F_bo$\")znb>Fip7$Fibo$\")P8O>Fip7$Fcco$\")JX5>Fip 7$Faeo$\")3bK=Fip7$Fefo$\")Qk'y\"Fip7$F_go$\")n)[t\"Fip7$Figo$\")81TFip7$F^]p$\")-5X>Fip7$Fh]p$\")'\\_(>Fip7$F\\_p$\")*[O+#Fip7$Ff_p$\")a jN?Fip7$Fj`p$\")Ooo?Fip7$Fdap$\")R)>6#Fip7$Fhbp$\")xul@Fip7$F\\dp$\")P oVAFip7$F`ep$\")Ts%G#Fip7$Fdfp$\")&>BL#Fip7$F^gp$\")%\\iP#Fip7$F\\ip$ \")ddLCFip7$Ffip$\")Bh:DFip7$F`jp$\")er$o#Fip7$F^\\q$\")UcZFFip7$Fh\\q $\")rq7GFip7$F\\^q$\")$H*))GFip7$Fd`q$\")\\\")zHFip7$Fhaq$\")\"HE0$Fip 7$F\\cq$\")(y7<$Fip7$Fjdq$\")xveLFip7$Fhfq$\")F)**o$Fip7$F\\hq$\")n=tR Fip7$F`iq$\")pMRTFip7$Feiq$\")P_qTFip7$Fjiq$\")Z9-UFip7$F_jq$\")N&RE%F ip7$Fdjq$\")lPFVFip7$Fijq$\")FyeWFip7$F^[r$\")&\\=g%Fip7$Fc[r$\")%zvt% Fip7$Fa]r$\")^Vk[Fip7$Fi_r$\")4*3,&Fip7$Fabr$\")*y.:&Fip7$Fecr$\"),d8_ Fip7$F_dr$\")\"zZD&Fip7$Fidr$\")U0e_Fip7$Fcer$\")FPU_Fip7$Fher$\")VtD_ Fip7$F]fr$\")#oD?&Fip7$Fbfr$\")GN-_Fip7$Fgfr$\")m!p@&Fip7$F\\gr$\")_$z E&Fip7$Fagr$\"))zXJ&Fip7$Ffgr$\")@&fS&Fip7$Fjhr$\")#e\"\\aFip7$Fdir$\" )LWraFip7$F^jr$\")?D'[&Fip7$Fhjr$\")#[t\\&Fip7$F][s$\")A'*3bFip7$Fb[s$ \")kW:bFip7$Fg[s$\")\\a4bFip7$F\\\\s$\")0\\,bFip7$Ff\\s$\")*eZZ&Fip7$F `]s$\")!)[PaFip7$Fe]s$\")n!yM&Fip7$Fj]s$\")c]A_Fip7$F_^s$\")>I^]Fip7$F d^s$\")(H\"p[Fip7$Fi^s$\")0B!p%Fip7$F^_s$\")a@(\\%Fip7$Fc_s$\")(H@J%Fi p7$Fh_s$\")?O7TFip7$F]`s$\")uaWRFip7$Fb`s$\")>)pw$Fip7$Fg`s$\")IG,OFip 7$F\\as$\")I$zW$Fip7$Faas$\"),s4LFip7$Ffas$\")f&*pJFip7$F`bs$\")8sJIFi p7$F^ds$\")b*H\"HFip7$Fhds$\")1j+GFip7$Fbes$\")ud\"p#Fip7$F\\fs$\")n%* *e#Fip7$Fffs$\")@E.DFip7$F`gs$\")8k,CFip-F`fm6&FbfmF_gmF(F_gm-%+AXESLA BELSG6%Q!6\"F^au-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F`hmF`gs;$!\"$!#5$FahmF [bu" 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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 7" }{TEXT 285 61 " .. The accuracy of an adaptive order 7-8 Runge-Kutta method " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this exampl e we construct a continuous numerical solution to the differential equ ation" }}{PARA 257 "" 0 "" {TEXT -1 1 " " }{XPPEDIT 18 0 "dy/dx=(ln(x+ 2)+5*cos(3*x))/y^3" "6#/*&%#dyG\"\"\"%#dxG!\"\"*&,&-%#lnG6#,&%\"xGF&\" \"#F&F&*&\"\"&F&-%$cosG6#*&\"\"$F&F/F&F&F&F&*$%\"yGF7F(" }{TEXT -1 2 " , " }}{PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial condition " }{XPPEDIT 18 0 "y(0) = 1;" "6#/-%\"yG6#\"\"!\"\"\"" }{TEXT -1 2 ". " } }{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "Maple c an find an analytical solution although it has an awkward form which r equires that an equation be solved for each evaluation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 153 "de := \+ diff(y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3;\nic := y(0)=1;\ndsolve(\{de, ic\},y(x));\ng := unapply(rhs(%),x):\nplot(g(x),x=0..4,0..2.2,labels=[ `x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\" yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3-%$cosG6#,$*&\"\"$F 3F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6# \"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#%\"xG,$*&#\"\" \"\"\"$F+*$),0\"#\")F+*(\"$C$F+-%#lnG6#,&F'F+\"\"#F+F+F'F+F+*&\"$['F+F 3F+F+*&F2F+F'F+!\"\"*(\"%g@F+)-%$cosGF&F7F+-%$sinGF&F+F+*&\"$S&F+FAF+F ;*&F9F+-F46#F7F+F;#F+\"\"%F+F+F+" }}{PARA 13 "" 1 "" {GLPLOT2D 615 199 199 {PLOTDATA 2 "6%-%'CURVESG6$7[p7$$\"\"!F)$\"\"\"F)7$$\"3emmm;ar z@!#>$\"3fE]lbK/16!#<7$$\"39LLLL3VfVF/$\"3ME\"p7yR!)=\"F27$$\"3s****** \\i9RlF/$\"3m*R7`%=ab7F27$$\"3Hmmmm;')=()F/$\"3&R#Hs!fBJJ\"F27$$\"3-++ ]7z>^7!#=$\"3s]SbU=x'R\"F27$$\"3RLLLe'40j\"FE$\"3soez0ULl9F27$$\"3/++] (Q&3d?FE$\"3o-LU<7EH:F27$$\"3mmmm;6m$[#FE$\"39&GJG2)G#e\"F27$$\"3fmmm; yYULFE$\"3=4*4M\\;Km\"F27$$\"3%HLL$eF>(>%FE$\"3K'*)\\FE$\"3tT*Q\"H(RXu\"F27$$\" 3IKLLeZ*)*R&FE$\"3#>QGr.3@v\"F27$$\"3P*****\\Kd,\"eFE$\"3AUZ#[)31bUV\"F27$$\"3)*******p=\\q6F2$\"3q$QXhSvcJ\"F27$$\"3@LLe9rR37F2$\"3I(y 1]EC_D\"F27$$\"3mmm;fBIY7F2$\"3i='**[/`2>\"F27$$\"33++Dh`P\"H\"F2$\"3: PLV'=a%46F27$$\"3GLLLj$[kL\"F2$\"3C-*owFa\\-\"F27$$\"3MLLL36ju8F2$\"3v DIN_*>Da*FE7$$\"3?LLL`Q\"GT\"F2$\"3#4-#fpk<1*)FE7$$\"3$***\\7e;-N9F2$ \"3$p`BEN'=3')FE7$$\"3mmm\"HYHsX\"F2$\"3w!>P$pIH&R)FE7$$\"3#**\\7`OL$o 9F2$\"3YimGV@&)G$)FE7$$\"3=L$3xEP%z9F2$\"3u&[@'pn\\#H)FE7$$\"3kmT5q6a! \\\"F2$\"3%\\i<3ZQxG)FE7$$\"3!*****\\s]k,:F2$\"3oC7_(\\5]J)FE7$$\"3_mm \"HTg4a\"F2$\"377_S77f\\')FE7$$\"39LLL`dF!e\"F2$\"3SQP60Mfg#*FE7$$\"3^ mm\"H\"4TB;F2$\"3PiQju)f!45F27$$\"33++]sgam;F2$\"3e*\\;qltt4\"F27$$\"3 &******\\%4i2F2$\"3+P\"o$e**pX:F2 7$$\"3)****\\([Wdb>F2$\"3W+iff3Y3;F27$$\"3immmTc-)*>F2$\"3uo8V1B4n;F27 $$\"3Mmm;f`@'3#F2$\"3!*zC`:&=ix\"F27$$\"3y****\\nZ)H;#F2$\"3Q4;k.v)y&= F27$$\"3YmmmJy*eC#F2$\"3<0`iwzzK>F27$$\"3')******R^bJBF2$\"3_s>h![ei*> F27$$\"3f*****\\5a`T#F2$\"37\\WYb'[^/#F27$$\"3o****\\7RV'\\#F2$\"3kG3Y r*z/3#F27$$\"3k*****\\@fke#F2$\"3*[W7[tgk5#F27$$\"3Nmm;%30pi#F2$\"3GLO =6iw8@F27$$\"3/LLL`4NnEF2$\"3G\\#eegh%=@F27$$\"3Emmm^b`5FF2$\"3rz;vW7?@F27$$\"3)HL$e9=&Gz#F2$\"3Y'efK g>t6#F27$$\"3[mm;zM)>$GF2$\"3Nb`)f\"RV7@F27$$\"3$*******pfaF27$$\"3xmmm')fdLLF2$\"3!GBB,iN8%>F27$$\"3bmmm,FT=MF2$\"3a Jug0DD;>F27$$\"39++v8)z/Y$F2$\"3l'[\"HL/g2>F27$$\"3FLL$e#pa-NF2$\"3rad EdF.->F27$$\"3emm\"HB-7a$F2$\"3Ob$Gb(o#***=F27$$\"3!*******Rv&)zNF2$\" 32)>CwG(*3!>F27$$\"3#ommT)3;COF2$\"3%=6J(H'>f!>F27$$\"3ILLLGUYoOF2$\"3 x[@O2*>^\">F27$$\"3\"*****\\n'*33PF2$\"3zzF27$$\"3_mmm1^rZPF2$ \"3gV\"e7I[9%>F27$$\"34++]sI@KQF2$\"3o)ft$o=_\")>F27$$\"34++]2%)38RF2$ \"33Vq\\d^XG?F27$$\"\"%F)$\"3Ud6vG/\\%3#F2-%'COLOURG6&%$RGBG$\"#5!\"\" F(F(-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F(F[dl;F($\"#AFedl" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 106 "We start by co nstructing a discrete solution and make a numerical comparison with th e analytical solution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 374 "d e := diff(y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3;\nic := y(0)=1;\npts := \+ desolveRK(\{de,ic\},y(x),x=0..4,method=rk78,output=points):\ncat(`The \+ discrete solution has `,convert(nops(pts),string),` points`);\np1 := p lot(pts,style=line,color=grey):\np2 := plot([pts$2],style=point,symbol =[diamond,cross],color=[black,red]):\nplots[display]([p1,p2],view=[0.. 4,0..2.2],labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%# deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3- %$cosG6#,$*&\"\"$F3F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%DThe ~discrete~solution~has~42~pointsG" }}{PARA 13 "" 1 "" {GLPLOT2D 585 359 359 {PLOTDATA 2 "6'-%'CURVESG6%7L7$$\"\"!F)$\"\"\"F)7$$\"3-+++++++ 5!#>$\"3/+++BSk_5!#<7$$\"3++++G,X\\FF/$\"3\"******>_n#H6F27$$\"3s***** 4\"Hk**\\F/$\"3-+++Q!4\"47F27$$\"3w*****HKF)GzF/$\"3++++C(4KH\"F27$$\" 3%******z23/<\"!#=$\"3-+++K6S!Q\"F27$$\"37+++5U'3l\"FE$\"33+++DGno9F27 $$\"31+++t?i`AFE$\"3%******\\X2\\b\"F27$$\"33+++b4!*)*HFE$\"3++++hl`M; F27$$\"3G+++RR'*3RFE$\"30+++ZM0,+++)zw3,&FE$\"3'*******>v/X< F27$$\"3K++++@!pM'FE$\"33+++$3p@v\"F27$$\"3W+++5PfG!)FE$\"3'******4_Z_ p\"F27$$\"3=+++*>-6t*FE$\"3/+++viVk:F27$$\"3\"******4j$HD6F2$\"3%***** *RiTBQ\"F27$$\"3/+++Io'\\?\"F2$\"33+++`N'3E\"F27$$\"3%******\\MQwE\"F2 $\"35+++3!HG:\"F27$$\"3,+++%[a_K\"F2$\"3%*******=>0Y5F27$$\"3)*******y x#yP\"F2$\"3w******=\"*R&[*FE7$$\"3#******HNV7T\"F2$\"3x*****f\"GwH*)F E7$$\"31+++B$pYW\"F2$\"3G+++`kl.&)FE7$$\"33++++j?y9F2$\"3E+++'f))\\H)F E7$$\"3$******4/V%4:F2$\"3M+++6m(HN)FE7$$\"3!*******Gs`S:F2$\"3!****** *=;EW')FE7$$\"3)*******fa-x:F2$\"3a+++hs0.#*FE7$$\"32+++UsS6;F2$\"3O++ +t0`])*FE7$$\"3)*******y([Cl\"F2$\"3%******\\^z$o5F27$$\"3)*******Rt)) 3Z\"F27$$\"3++++)*[)p)>F2$\"3#******\\vL Al\"F27$$\"3A+++V@b*=#F2$\"3'******R5nL)=F27$$\"3'******p*er!Q#F2$\"30 +++18\\E?F27$$\"33+++23_#f#F2$\"3,+++RZs2@F27$$\"3++++'3xc\"GF2$\"3&** *****\\cr9@F27$$\"3=+++0HvWIF2$\"37+++SlBb?F27$$\"3;+++1HGjKF2$\"3++++ X)>v'>F27$$\"3=+++@IY(\\$F2$\"33+++\"oHD!>F27$$\"3=+++f_2VOF2$\"3\"*** ***HcT$4>F27$$\"3;+++pfN!z$F2$\"3-+++$*zIg>F27$$\"39+++lP%3(RF2$\"31++ +*4z_1#F27$$\"\"%F)$\"39+++H/\\%3#F2-%'COLOURG6&%$RGBG$\")=THv!\")FjxF jx-%&STYLEG6#%%LINEG-F$6&F&-Fgx6&FixF)F)F)-%'SYMBOLG6#%(DIAMONDG-F^y6# %&POINTG-F$6&F&-Fgx6&Fix$\"*++++\"F\\yF(F(-Ffy6#%&CROSSGFiy-%+AXESLABE LSG6%%\"xG%%y(x)G-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F(Fbx;F($\"#A!\"\"" 1 2 0 1 10 0 2 9 1 4 2 1.000000 46.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continuous solution can be constructed over the interva l from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 " to " } {XPPEDIT 18 0 "x = 4;" "6#/%\"xG\"\"%" }{TEXT -1 21 " using the proced ure " }{TEXT 0 9 "desolveRK" }{TEXT -1 20 " with the options ''" } {TEXT 262 11 "method=rk78" }{TEXT -1 9 "'' and ''" }{TEXT 262 15 "outp ut=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 252 "de := diff(y(x),x)=(ln(x+2) +5*cos(3*x))/y(x)^3;\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},y(x),x =0..4,method=rk78,output=rkinterp);\nplot('gn1'(x),x=0..4,0..2.2,label s=[`x`,`y(x)`],\n color=COLOR(RGB,.6,.05,0),thickness=2, labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%dif fG6$-%\"yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3-%$cosG6#,$ *&\"\"$F3F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/ -%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 470 275 275 {PLOTDATA 2 "6'-%'CURVESG6#7[p7$$\"\"!F)$\"\"\"F)7$$\"+;arz@!#6$\"+cK/ 16!\"*7$$\"+L3VfVF/$\"+\"yR!)=\"F27$$\"+]i9RlF/$\"+X=ab7F27$$\"+m;')=( )F/$\"+\"fBJJ\"F27$$\"+7z>^7!#5$\"+U=x'R\"F27$$\"+e'40j\"FE$\"+1ULl9F2 7$$\"+)Q&3d?FE$\"+<7EH:F27$$\"+<6m$[#FE$\"+t!)G#e\"F27$$\"+(>%FE$\"+53;; K'*)\\FE$\"+H(RXu\"F27$$\"+gZ*)*R&FE$\"+P!3@v\"F27$$\"+Dt:5eFE$\"+&)31 bUV\" F27$$\"+q=\\q6F2$\"+1an:8F27$$\"+9rR37F2$\"+mUAb7F27$$\"+fBIY7F2$\"+XI v!>\"F27$$\"+h`P\"H\"F2$\"+(=a%46F27$$\"+j$[kL\"F2$\"+yU&\\-\"F27$$\"+ 36ju8F2$\"+f*>Da*FE7$$\"+`Q\"GT\"F2$\"+vk<1*)FE7$$\"+e;-N9F2$\"+aj=3') FE7$$\"+i%HsX\"F2$\"+wIH&R)FE7$$\"+kLLo9F2$\"+\\@&)G$)FE7$$\"+nsVz9F2$ \"+rn\\#H)FE7$$\"+q6a!\\\"F2$\"+r%QxG)FE7$$\"+s]k,:F2$\"+'\\5]J)FE7$$ \"+7/'4a\"F2$\"+,7f\\')FE7$$\"+`dF!e\"F2$\"+*R$fg#*FE7$$\"+74TB;F2$\"+ t)f!45F27$$\"+sgam;F2$\"+cOP(4\"F27$$\"+W4i2F2$\"+f**pX:F27$$\"+\\Wdb>F2$\"+g3Y3 ;F27$$\"+Uc-)*>F2$\"+2B4n;F27$$\"+f`@'3#F2$\"+:&=ix\"F27$$\"+nZ)H;#F2$ \"+.v)y&=F27$$\"+Ky*eC#F2$\"+xzzK>F27$$\"+S^bJBF2$\"+\"[ei*>F27$$\"+0T N:CF2$\"+b'[^/#F27$$\"+7RV'\\#F2$\"+r*z/3#F27$$\"+:#fke#F2$\"+N2Y1@F27 $$\"+%30pi#F2$\"+6iw8@F27$$\"+`4NnEF2$\"+1;Y=@F27$$\"+_b`5FF2$\"+=Do?@ F27$$\"+],s`FF2$\"+?W7?@F27$$\"+9=&Gz#F2$\"+.'>t6#F27$$\"+zM)>$GF2$\"+ ;RV7@F27$$\"+qfaF27$$\"+ ()fdLLF2$\"+?cLT>F27$$\"+-FT=MF2$\"+1DD;>F27$$\"+9)z/Y$F2$\"+L/g2>F27$ $\"+Epa-NF2$\"+dF.->F27$$\"+LA?TNF2$\"+wo#***=F27$$\"+Sv&)zNF2$\"+)G(* 3!>F27$$\"+%)3;COF2$\"+I'>f!>F27$$\"+GUYoOF2$\"+2*>^\">F27$$\"+o'*33PF 2$\"+#)4xE>F27$$\"+2^rZPF2$\"+,$[9%>F27$$\"+sI@KQF2$\"+o=_\")>F27$$\"+ 2%)38RF2$\"+d^XG?F27$$\"\"%F)$\"+H/\\%3#F2-%&COLORG6&%$RGBG$\"\"'!\"\" $\"\"&!\"#F(-%*THICKNESSG6#\"\"#-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$ ;F(F[dl;F($\"#AFedl" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 " " 0 "" {TEXT -1 139 "The first error graph is plotted using standard 1 0 digit arithmetic for the evaluation of the procedure which gives the numerical solution." }}{PARA 0 "" 0 "" {TEXT -1 63 "The error is grea test where the derivative is changing rapidly." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "plot('gn1'(x )-g(x),x=0..4,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7c_n7$$\"\"!F)$\"\"\"!#57$$\"+qUkCF!#7F(7$$ \"+S&)G\\aF0F(7$$\"+5G$R<)F0F(7$$\"+3x&)*3\"!#6F(7$$\"+N@Ki8F:F(7$$\"+ ilyM;F:$!\"\"!\"*7$$\"+*)4D2>F:F(7$$\"+;arz@F:F(7$$\"+V)z@X#F:F(7$$F/F :F(7$$\"+(p3r*HF:F(7$$\"+CJdpKF:$F+FC7$$\"+^v.UNF:F(7$$\"+y>]9QF:FA7$$ \"+1k'p3%F:F(7$$\"+L3VfVF:F(7$$\"+]i9RlF:F(7$$\"+m;')=()F:F(7$$\"+7z>^ 7F,F(7$$\"+e'40j\"F,F(7$$\"+BvzV=F,F(7$$\"+)Q&3d?F,F(7$$\"+atS5@F,F(7$ $\"+?$HP;#F,F(7$$\"+..R!>#F,F(7$$\"+'G^q@#F,FU7$$\"+pArVAF,F(7$$\"+_KP qAF,FU7$$\"+NU.(H#F,FA7$$\"+=_pBBF,F(7$$\"+,iN]BF,F(7$$\"+%=,\"f#F,F(7$$\"+k'\\yh# F,F(7$$\"+ttoWEF,F(7$$\"+#3D:n#F,F(7$$\"+#zi$)p#F,FU7$$\"+-0?DFF,F(7$$ \"+6#Q?v#F,FU7$$\"+?f()yFF,F(7$$\"+IOr0GF,F(7$$\"+R8bKGF,FA7$$\"+[!*Qf GF,FA7$$\"+enA')GF,F(7$$\"+nW18HF,F(7$$\"+UhwFJF,F(7$$\"+(>%F,FU7$$\"+!\\c>A%F,F(7$$\"+A-sYUF,FU7$ $\"+aR[rUF,F(7$$\"+(oZiH%F,FA7$$\"+?9,@VF,F(7$$\"+_^xXVF,F(7$$\"+%))Q0 P%F,F(7$$\"+;EI&R%F,F(7$$\"+XvN%\\%F,F(7$$\"+uCT$f%F,F(7$$\"+Q*RHk%F,F (7$$\"+.uY#p%F,F(7$$\"+O6Bu%F,F(7$$\"++'enw%F,F(7$$\"+ KB_\"z%F,FU7$$\"+kgG;[F,FU7$$\"+(z\\5%[F,F(7$$\"+IN\"e'[F,F(7$$\"+isd! *[F,F(7$$\"+EZ5S\\F,F(7$$\"+\">K'*)\\F,F(7$$\"+vMw%>&F,F(7$$\"+gZ*)*R& F,F(7$$\"++/Y-bF,F(7$$\"+Sg-0cF,F(7$$\"+]umIcF,F(7$$\"+g)3jl&F,FU7$$\" +q-&>o&F,FU7$$\"+!o\"f2dF,F(7$$\"+!4LKt&F,F(7$$\"++X()edF,FU7$$\"+5f^% y&F,F(7$$\"+Dt:5eF,FU7$$\"+5dnOeF,F(7$$\"+!4%>jeF,F(7$$\"+vCr*)eF,F(7$ $\"+g3B;fF,F(7$$\"+S#\\F%fF,FU7$$\"+DwEpfF,FU7$$\"+5gy&*fF,F(7$$\"+!R/ B-'F,FU7$$\"+vF#)[gF,F(7$$\"+g6MvgF,F(7$$\"+S&f=5'F,F(7$$\"+DzPGhF,FU7 $$\"+5j*[:'F,F(7$$\"+!p99='F,F(7$$\"+vI$z?'F,F(7$$\"+g9XMiF,F(7$$\"+D& )fYkF,F(7$$\"+\"fX(emF,F(7$$\"+5!z;3(F,F(7$$\"+DCh/vF,F(7$$\"+L/pu$)F, F(7$$\"+DI(yv)F,F(7$$\"+;c0T\"*F,F(7$$\"+Ds(\\>*F,F(7$$\"+I))*)[#*F,F( 7$$\"+I'feF*F,F(7$$\"+N/#GI*F,F(7$$\"+S7yH$*F,F(7$$\"+S?uc$*F,FU7$$\"+ SGq$Q*F,F(7$$\"+XOm5%*F,F(7$$\"+]WiP%*F,FU7$$\"+]_ek%*F,F(7$$\"+bo]=&* F,F(7$$\"+g%GCd*F,F(7$$\"+g#*Q*f*F,F(7$$\"+l+NE'*F,F(7$$\"+q3J`'*F,F(7 $$\"+q;F!o*F,FA7$$\"+qCB2(*F,F(7$$\"+vK>M(*F,F(7$$\"+!3a6w*F,FA7$$\"+! )[6)y*F,F(7$$\"+&[O?%)*F,F(7$$\"+!4ef*)*F,F(7$$\"+!*)=H#**F,F(7$$\"+&p z)\\**F,F(7$$\"++0%o(**F,FU7$$\"+I,Q+5FCFA7$$\"+!G(3.5FCF(7$$\"+JWz05F CF(7$$\"+#e,&35FCF(7$$\"+K(37,\"FCFU7$$\"+$)e\"R,\"FCFU7$$\"+MIi;5FCF( 7$$\"+%=I$>5FCF(7$$\"+Nt.A5FCF(7$$\"+O;XF5FCF(7$$\"+Qf'G.\"FCF(7$$\"+) 3tb.\"FCF(7$$\"+R-GQ5FCF(7$$\"+!R()4/\"FCF(7$$\"+SXpV5FCFA7$$\"+!p,k/ \"FCF(7$$\"+T)3\"\\5FCFA7$$\"+#*f\"=0\"FCF(7$$\"+UJ_a5FCF(7$$\"+$HIs0 \"FCFA7$$\"+Wu$*f5FCFU7$$\"+%fWE1\"FCF(7$$\"+XF,7$$\"+Aa3l8 FC$FCF,7$$\"+W=Zn8FCFefm7$$\"+l#e)p8FC$!\"(F,7$$\"+'oWAP\"FC$!#OF,7$$ \"+36ju8FC$\"\"(F,7$$\"+Iv,x8FC$\"#=F,7$$\"+^RSz8FC$F:F,7$$\"+s.z\"Q\" FC$\"\"%F,7$$\"+%zwTQ\"FC$\"#9F,7$$\"+;Kc'Q\"FCF^im7$$\"+P'\\*)Q\"FC$! #=F,7$$\"+egL\"R\"FCFefm7$$\"+![APR\"FC$!#@F,7$$\"+-*3hR\"FC$!#UF,7$$ \"+B`\\)R\"FCF`fm7$$\"+W<)3S\"FC$\"#XF,7$$\"+m\"oKS\"FC$\"#HF,7$$\"+)e acS\"FC$\"#8F,7$$\"+55/39FC$\"\")F,7$$\"+KuU59FC$\"\"&F,7$$\"+`Q\"GT\" FC$!#FF,7$$\"+G)*e:9FC$\"\"#F,7$$\"+/eO=9FC$!#DF,7$$\"+!yT6U\"FC$!#NF, 7$$\"+cx\"RU\"FC$\"#OF,7$$\"+KPpE9FC$!\"$F,7$$\"+2(p%H9FCFc]n7$$\"+#oX AV\"FC$!#MF,7$$\"+e;-N9FCFc]n7$$\"+MwzP9FC$!#AF,7$$\"+4OdS9FC$\"#WF,7$ $\"+%e\\LW\"FCFj^n7$$\"+gb7Y9FCF`hm7$$\"+O:!*[9FC$!#>F,7$$\"+6vn^9FC$ \"#FF,7$$\"+'[`WX\"FC$\"#6F,7$$\"+i%HsX\"FCFg`n7$$\"+Qa+g9FCFefm7$$\"+ 89yi9FC$!\")F,7$$\"+)QdbY\"FC$\"#RF,7$$\"+kLLo9FC$\"#YF,7$$\"+S$46Z\"F C$\"\"'F,7$$\"+;`)QZ\"FCFgan7$$\"+#HhmZ\"FC$\"#kF,7$$\"+nsVz9FC$\"#sF, 7$$\"+UK@#[\"FC$!#HF,7$$\"+=#*)\\[\"FC$\"#hF,7$$\"+%>lx[\"FC$!#KF,7$$ \"+q6a!\\\"FC$\"#_F,7$$\"+YrJ$\\\"FC$\"#QF,7$$\"+@J4'\\\"FCFbdn7$$\"+' 4p))\\\"FC$\"\"*F,7$$\"+s]k,:FC$!#8F,7$$\"+\"G-T]\"FCFefm7$$\"+!\\fl] \"FC$\"#UF,7$$\"+)p;!4:FC$\"#;F,7$$\"+2RZ6:FC$!#!=;FC$\"#AF,7$$\"+k\\r?;FCFU7$$\"+74TB;FCFA7$$\"+go5E;FC$ F_imFC7$$\"+2G!)G;FC$FffmFC7$$\"+a()\\J;FC$F_]nFC7$$\"+-Z>M;FCF(7$$\"+ ]1*oj\"FCFA7$$\"+(f'eR;FC$!\"#FC7$$\"+WDGU;FCFA7$$\"+#\\y\\k\"FCFiao7$ $\"+SWnZ;FCFU7$$\"+(Qq.l\"FCF(7$$\"+Mj1`;FCF(7$$\"+#Gidl\"FCF(7$$\"+I# e%e;FCFA7$$\"+xT:h;FCFgbo7$$\"+C,&Qm\"FCFA7$$\"+sgam;FCFA7$$\"+_K6p;FC Fjdm7$$\"+J/or;FCF]bo7$$\"+5wCu;FCFU7$$\"+!z9on\"FCF(7$$\"+q>Qz;FCF(7$ $\"+\\\"\\>o\"FCFA7$$\"+Gj^%o\"FCF(7$$\"+3N3(o\"FCFU7$$\"+)o]'*o\"FCF] bo7$$\"+ny@#p\"FCF]bo7$$\"+Y]y%p\"FCF(7$$\"+EAN(p\"FCFA7$$\"+1%>**p\"F CFU7$$\"+&e'[-FCFA7$$\"+cTG.>FCFU7$$\"+1P?3>FCFU7$$\" +cK78>FCFU7$$\"+ckx:>FCFU7$$\"+b'H%=>FCF(7$$\"+aG3@>FCF(7$$\"+agtB>FCF ]bo7$$\"+a#*QE>FCFA7$$\"+`C/H>FCF(7$$\"+_cpJ>FCF(7$$\"+_)[V$>FCF(7$$\" +_?+P>FCF(7$$\"+^_lR>FCFA7$$\"+]%3B%>FCF(7$$\"+];'\\%>FCF(7$$\"+][hZ>F CF(7$$\"+]!o-&>FCFU7$$\"+]7#H&>FCF(7$$\"+\\Wdb>FCFU7$$\"+[wAe>FCF(7$$ \"+[3)3'>FCFA7$$\"+[S`j>FCF(7$$\"+[s=m>FCFU7$$\"+[/%)o>FCF(7$$\"+ZO\\r >FCF(7$$\"+Yo9u>FCFA7$$\"+Y+!o(>FCFA7$$\"+YKXz>FCF(7$$\"+Xk5#)>FCF(7$$ \"+W'fZ)>FCFU7$$\"+WGT()>FCF(7$$\"+Wg1!*>FCFU7$$\"+V#>F*>FCFU7$$\"+UCP &*>FCF(7$$\"+Uc-)*>FCF(7$$\"+rI2??FCF(7$$\"++07U?FCF(7$$\"+Hk([/#FCF(7 $$\"+eBjZ?FCFU7$$\"+'G)Q]?FCF(7$$\"+:U9`?FCFU7$$\"+W,!f0#FCF(7$$\"+sgl e?FCF(7$$\"+,?Th?FCF(7$$\"+Iz;k?FCF(7$$\"+eQ#p1#FCF(7$$\"+(yz'p?FCFU7$ $\"+;dVs?FCFU7$$\"+W;>v?FCFU7$$\"+tv%z2#FCFU7$$\"+-Nq!3#FCF(7$$\"+I%fM 3#FCF(7$$\"+f`@'3#FCFA7$$\"+6xS0@FCFA7$$\"+j+gC@FCFA7$$\"+2\"**p7#FCFU 7$$\"+^\")RH@FCF(7$$\"+&>(zJ@FCFU7$$\"+Ri>M@FCFA7$$\"+$G&fO@FCF(7$$\"+ FV**Q@FCF(7$$\"+rLRT@FCF(7$$\"+:CzV@FCF(7$$\"+\"f)Q`@FCF(7$$\"+nZ)H;#F CF(7$$\"+MIr$=#FCF(7$$\"++8W/AFCF(7$$\"+LB.2AFCF(7$$\"+mLi4AFCF(7$$\"+ +W@7AFCFU7$$\"+La![@#FCFA7$$\"+mkRAFCF(7$$\"+L&yDA#FC FU7$$\"+m&p^A#FCF(7$$\"+*fgxA#FCF(7$$\"+K;NIAFCFU7$$\"+mE%HB#FCFU7$$\" +*pLbB#FCF(7$$\"+KZ7QAFCF(7$$\"+mdrSAFCF(7$$\"+*z1LC#FCF(7$$\"+Ky*eC#F CFU7$$\"+'[E()G#FCFU7$$\"+S^bJBFCFU7$$\"+eQ!yDFCF(7$$\"+ME$3e#FCF(7$$\"+Cfk$e#FC F(7$$\"+:#fke#FCFU7$$\"+#3()*)e#FCFU7$$\"+[\\^\"f#FCF(7$$\"+:G/%f#FCF( 7$$\"+#oqlf#FCF(7$$\"+;ki,EFCF(7$$\"+]@o1EFCF(7$$\"+(*4GFCF(7$$\"+YwT7GFCFU7$$\"+vL'[\"GF CFU7$$\"+/\"4t\"GFCF(7$$\"+L[v>GFCFU7$$\"+i0?AGFCF(7$$\"+??4FGFCF(7$$ \"+zM)>$GFCF(7$$\"+CZwuGFCF(7$$\"+qfaIFCF(7$$\"+G=s@IFCF(7$$\"+I;NCIFCFU7$$\"+K9)p-$FCFA7$$\" +M7hHIFCF(7$$\"+O5CKIFCFU7$$\"+R3([.$FCF(7$$\"+U1]PIFCF(7$$\"+W/8SIFCF U7$$\"+Y-wUIFCF(7$$\"+\\+RXIFCF(7$$\"+_)>![IFCF(7$$\"+a'\\10$FCF(7$$\" +c%zK0$FCF(7$$\"+e#4f0$FCFU7$$\"+g!R&eIFCF(7$$\"+j)o61$FCF(7$$\"+m')zj IFCFU7$$\"+o%Gk1$FCF(7$$\"+q#e!pIFCF(7$$\"+s!)orIFCFU7$$\"+uyJuIFCFU7$ $\"+xw%p2$FCF(7$$\"+![x&zIFCFU7$$\"+#G2A3$FCF(7$$\"+2&\\t3$FCF(7$$\"+K <\\#4$FCF(7$$\"+WG1&4$FCF(7$$\"+dRj(4$FCFU7$$\"+q]?+JFCF(7$$\"+#=wF5$F CFU7$$\"+%HZ`5$FCFU7$$\"+2%=z5$FCF(7$$\"+?&*[5JFCFU7$$\"+K118JFCFU7$$ \"+WaJFCF(7$$\"+X&pn:$FCFU7$$\"+e1MfJFCF(7$$\"+q<\">;$FCF(7$$\"+$ )G[kJFCFU7$$\"+;m,'=$FCFU7$$\"+[.b2KFCFU7$$\"+k?C5KFCF(7$$\"+\"yLH@$FC F(7$$\"+)\\Dc@$FCFU7$$\"+9sJ=KFCFU7$$\"+I*35A$FCF(7$$\"+Z1qBKFCFU7$$\" +kBREKFCFU7$$\"+!3%3HKFCF(7$$\"+'zvR$FCFU7$$\"+wBb%R$FCFU7$$\"+BN?(R$FCF(7$$ \"+qY&)*R$FCFU7$$\"+=e]-MFCFU7$$\"+lp:0MFCFU7$$\"+7\"3yS$FCF(7$$\"+g#f /T$FCF(7$$\"+2/68MFCF(7$$\"+a:w:MFCFU7$$\"+-FT=MFCFU7$$\"+'*=/@MFCF(7$ $\"+\"4rOU$FCF(7$$\"+'G+jU$FCF(7$$\"+![H*GMFCFU7$$\"+u'e:V$FCF(7$$\"+p y=MMFCF(7$$\"+kq\"oV$FCF(7$$\"+eiWRMFCF(7$$\"+_a2UMFCF(7$$\"+ZYqWMFCFU 7$$\"+UQLZMFCFU7$$\"+OI'*\\MFCFU7$$\"+D9AbMFCFU7$$\"+9)z/Y$FCFU7$$\"+3 !4JY$FCF(7$$\"+.#QdY$FCF(7$$\"+)Rn$oMFCFU7$$\"+#f'*4Z$FCFU7$$\"+'yDOZ$ FCFU7$$\"+\")\\DwMFCF(7$$\"+wT))yMFCF(7$$\"+qL^\"[$FCF(7$$\"+kD9%[$FCF (7$$\"+f= Oa$FCFU7$$\"+YT.YNFCF(7$$\"+.,X[NFCF(7$$\"+gg'3b$FCFU7$$\"+;?G`NFCFU7$ $\"+tzpbNFCF(7$$\"+IR6eNFCFU7$$\"+'))H0c$FCF(7$$\"+Ve%Hc$FCF(7$$\"++=O lNFCF(7$$\"+cxxnNFCF(7$$\"+8P>qNFCFU7$$\"+q'4Ed$FCF(7$$\"+Ec-vNFCF(7$$ \"+$eTud$FCF(7$$\"+Sv&)zNFCFU7$$\"+*\\EEe$FCFU7$$\"+eaR&e$FCFA7$$\"+R@OFCF(7$$\"+%)3;COFCF(7$$\"+V)Hpi$FCFU7$$\"+-))pHOFC FU7$$\"+hxYKOFCFA7$$\"+?nBNOFCFU7$$\"+QYxSOFCFU7$$\"+cDJYOFCFU7$$\"+:: 3\\OFCFU7$$\"+u/&=l$FCF(7$$\"+L%>Yl$FCF(7$$\"+#R)QdOFCF(7$$\"+5j#Hm$FC F(7$$\"+GUYoOFCF(7$$\"+=3%4n$FCFU7$$\"+3uTtOFCF(7$$\"+)*R*en$FCFU7$$\" +)eq$yOFCFU7$$\"+yr%3o$FCF(7$$\"+oPK$o$FCF(7$$\"+e.!eo$FCFU7$$\"+[pF)o $FCFU7$$\"+QNv!p$FCFU7$$\"+G,B$p$FCF(7$$\"+=nq&p$FCF(7$$\"+3L=)p$FCFU7 $$\"+)*)f1q$FCF(7$$\"+)[OJq$FCFA7$$\"+yIh0PFCFU7$$\"+o'*33PFCFA7$$\"+e ic5PFCFU7$$\"+[G/8PFCFU7$$\"+Q%>br$FCF(7$$\"+Gg*zr$FCF(7$$\"+=EZ?PFCF( 7$$\"+3#\\Hs$FCF(7$$\"+)zDas$FCF(7$$\"+)Q-zs$FCFU7$$\"+y*y.t$FCF(7$$\" +ob&Gt$FCF(7$$\"+e@LNPFCF(7$$\"+[(3yt$FCF(7$$\"+G>wUPFCF(7$$\"+2^rZPFC F(7$$\"+sI@KQFCF(7$$\"+S2lsQFCF(7$$\"+2%)38RFCF(7$$\"+1j\"[$RFCF(7$$\" +/UacRFCF(7$$\"+yh(>'RFCF(7$$\"+`\"3u'RFCF(7$$\"+ST7qRFCFU7$$\"+G,%G(R FCFA7$$\"+:hbvRFCFU7$$\"+-@FyRFCFU7$$\"+*3))4)RFCF(7$$\"+wSq$)RFCF(7$$ \"+k+U')RFCFU7$$\"+^g8*)RFCF(7$$\"+Q?&=*RFCFU7$$\"+E!oX*RFCFU7$$\"+8SG (*RFCFU7$$F_imF)FU-%'COLOURG6&%$RGBGF(F($\"*++++\"Fhan-%+AXESLABELSG6$ Q\"x6\"Q!F`bu-%%VIEWG6$;F(Feau%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 136 "The solution has been construc ted in such a way that up to a point it will produce more accurate val ues when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "evalf[15](plot('gn1'(x)-g( x),x=0..4,color=blue,numpoints=100));" }}{PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7dgm7$$\"\"!F)$\"\"\"!#:7$$\"0g eeeeTG&!#<$!\")!#97$$\"0srrrJo0\"!#;$\"$:\"F37$$\"0lkkkR5K\"F7$\"$@\"F 37$$\"0edddZ_e\"F7$!\"#F37$$\"0///a^tr\"F7$!#%)F37$$\"0^]]]b%\\=F7$!#' *F37$$\"0)ppp%f:)>F7$\"$D#F37$$\"0WVVVjO6#F7$\"$N)F37$$\"0POOOryP#F7$ \"$e&F37$$\"0IHHHz?k#F7$!%%\\\"F37$$\"0wvvD$=uFF7$!$b\"F37$$\"0BAAA(G1 HF7$\"#xF37$$\"0qoo=\"RQIF7$\"#sF37$$\"0;:::&\\qJF7$!#iF37$$\"04333.ZV $F7$!$Y\"F37$$\"0-,,,6*)p$F7$!$K#F37$$\"0%RRR*=J'RF7$!#oF37$$\"0(ooooK FUF7$\"$'oF37$$\"057779k1'F7$!$o#F37$$\"0PPPP,b!zF7$!%1*F7$!$E$F37$$\"0NMM%eoc%*F7$!$u$F37$$\"054f@^fe*F7$!$'RF3 7$$\"0&QQ)e;_r*F7$!$!RF37$$\"0ge3'>[W)*F7$!$L$F37$$\"0NLLLZP(**F7$!$6# F37$$\"0GGy!yAB5F,$\"$\">F37$$\"0BBB)33\\5F,$\"$f&F37$$\"0==o&R$\\2\"F ,$\"$d%F37$$\"0888.(y+6F,$!$K$F37$$\"033e5Sm7\"F,$!%p8F37$$\"0...=$\\_ 6F,$!%$y\"F37$$\"0)zzaiMy6F,$!$%RF37$$\"0$HHH$*>/7F,$!$=#F37$$\"0---A[ iD\"F,$!$4$F37$$\"07666(H38F,$!$y$F37$$\"0@??+Y.O\"F,$!$0%F37$$\"0IHH* [R79F,$!$t$F37$$\"0RQQyVWY\"F,$\"$/\"F37$$\"0[ZZn#\\;:F,$\"$2%F37$$\"0 dcccT&o:F,$!$7'F37$$\"0mllX!f?;F,$!%kCF,$!$;%F37$$\"0+++?t'=DF,$!$3%F37$$\"0?>>zI\"=EF,$!$!QF 37$$\"0!)yyefym#F,$!$U#F37$$\"0RQQQ)eHF,$!%,8F37$$\"0cbb&*>c%HF,$!%; :F37$$\"0:::vM8(HF,$!%E;F37$$\"0%\\\\\\@>%)HF,$!%v;F37$$\"0uuua\\q*HF, $!%p*\\&RF,F][l7$$\"0srr'Rs2SF,$!$h$F37$$\"0xww'fXgSF,$!$ n$F37$$\"0nmmYTiC%F,$!$-%F37$$\"0dcc'p-KWF,$!$k$F37$$\"0+++?-m`%F,$!$X #F37$$\"0WVVVx6k%F,$!#\"*F37$$\"0;::0lMp%F,$!#(*F37$$\"0(oooEvXZF,$!$4 #F37$$\"0eeeGS!)z%F,$!$I%F37$$\"0III!zK][F,$!$6(F37$$\"0\"===-$G!\\F,$ !$c*F37$$\"0KLL`K`&\\F,$!%%3\"F37$$\"0344p$e\")\\F,$!%=6F37$$\"0&[[[[$ y+&F,$!%\"=\"F37$$\"0qssUg4-&F,$!$Y%F37$$\"0ggg+'3M]F,$!$P%F37$$\"0][[ e6s/&F,$!$E%F37$$\"0NOO;P.1&F,$!$8%F37$$\"0SRRzT`;&F,$!$d$F37$$\"0UUUU Y.F&F,$!$$QF37$$\"0011EHFZ&F,$!$#RF37$$\"0qpp47^n&F,$!$j$F37$$\"0!**)* )f.qw&F,$!$&GF37$$\"05555&*)eeF,$!$z\"F37$$\"0IIIg'y]fF,$!$K\"F37$$\"0 ]]]5yE/'F,$!$O#F37$$\"0!*)))))f%>:'F,$!$A&F37$$\"0DFF(Q@hiF,$!$i'F37$$ \"0lllv\"[qjF,F][m7$$\"0///k\\(zkF,$!$9$F37$$\"05555y[m'F,Fex7$$\"0;;; c1+&oF,$!$O$F37$$\"0lmmw!odpF,Fcu7$$\"0:<<(\\NlqF,$!$D$F37$$\"0SUU2#>> rF,$!$3$F37$$\"0lnnm(F,$\"#K F37$$\"0!QQ)3GUr(F,$!#&)F37$$\"0+..88lw(F,$!$,#F37$$\"0?AA<)z=yF,$!$r# F37$$\"0STT@$3ryF,$!$\\#F37$$\"0gggDoL#zF,$!$0\"F37$$\"0!)zzH`c(zF,$\" $[\"F37$$\"0SR*=ez,!)F,$\"$(GF37$$\"0+**)R$Qz-)F,$\"$/%F37$$\"0!)y.g45 /)F,$!$z%F37$$\"0ge3'33a!)F,$!$X%F37$$\"0SQ87_r1)F,Fit7$$\"0===QB-3)F, $!$S$F37$$\"0ggg56+8)F,$!$G\"F37$$\"00..$))zz\")F,F17$$\"0]XXb'eH#)F,$ !\"&F37$$\"0!zyyUPz#)F,$!#wF37$$\"0III+i\"H$)F,$!$u\"F37$$\"0vsss\\*y$ )F,$!$e#F37$$\"0:::XP(G%)F,$!$5$F37$$\"0ddd>>\"\\dF*F,$\"%RAF37$$\"0???5h'y$*F,$\"%P9F37$$\"0 ][[3t:[*F,$\"#6F37$$\"0gb03,t]*F,Fe]m7$$\"0lii2HI`*F,$!$'\\F37$$\"0qp> 2d(e&*F,$!$'fF37$$\"0!onn][%e*F,$!$e&F37$$\"0!44f5%fj*F,$!#KF37$$\"000 00(R(o*F,$\"$U*F37$$\"059*G\"f2q*F,$\"%-7F37$$\"0?Bt?@Tr*F,$\"%I9F37$$ \"0IKdG$[F(*F,$\"%.;F37$$\"0STTOX3u*F,Fhbl7$$\"0gf4_pvw*F,$\"$f\"F37$$ \"0!yxxOH%z*F,F^^n7$$\"0+'fMy,@)*F,$\"%A;F37$$\"0:99*>uZ)*F,$\"%]?F37$ $\"0?B)pS5h)*F,$\"%b@F37$$\"0IK#[hYu)*F,$\"%*=#F37$$\"0STmAGy))*F,$\"% d@F37$$\"0]]]I!>,**F,$\"%p?F37$$\"0KKKp33+\"F3$\"$w$F37$$\"0gffN)\\65F 3$!$$))F37$$\"0)yyQP!3-\"F3$!%h;F37$$\"0;;;74,.\"F3$!%sKF37$$\"0WWW]9% R5F3$!%EcF37$$\"0tss))>([5F3$!%`pF37$$\"0kk9#\\u`5F3$!%NkF37$$\"0ccc&* p(e5F3$!%qZF37$$\"0__FZ#Gh5F3$!%7NF37$$\"0[[)*)\\zj5F3$!%4?F37$$\"0WWp ]2j1\"F3$!$7$F37$$\"0SSS-?)o5F3$\"%1:F37$$\"0OO6aK82\"F3$\"%jLF37$$\"0 KK#e]%Q2\"F3$\"%h^F37$$\"0GG`ddj2\"F3$\"%$z'F37$$\"0CCC4q)y5F3$\"%c\") F37$$\"0??&4EQ\"3\"F3$\"%]\"*F37$$\"0;;m7&*Q3\"F3$\"%%o*F37$$\"09k^Q^^ 3\"F3$\"%c(*F37$$\"077Pk2k3\"F3$\"%\"p*F37$$\"05gA!Rm(3\"F3$\"%&[*F37$ $\"0333;?*)3\"F3$\"%O\"*F37$$\"0==o$e^\"4\"F3$\"%nzF37$$\"0GGG^6T4\"F3 $\"%TiF37$$\"0QQ))=2n4\"F3$\"%iSF37$$\"0[[['GI*4\"F3$\"%$e\"F37$$\"0ee 3a)*=5\"F3$!$$)*F37$$\"0ooo@%\\/6F3$!%xLF37$$\"0yyG*)*326F3$!%>`F37$$ \"0*))))obo46F3$!%FlF37$$\"0%R*oS$)46\"F3$!%znF37$$\"0+**[C\"G76F3$!%l nF37$$\"00/H3zN6\"F3$!%skF37$$\"0544#p([6\"F3$!%$*eF37$$\"0:9*eZ<;6F3$ !%W]F37$$\"0?>pfsu6\"F3$!%]RF37$$\"0DC\\Vq(=6F3$!%bEF37$$\"0IHHFo+7\"F 3$!%S7F37$$\"0NM46m87\"F3$\"$,#F37$$\"0SR*[RmA6F3$\"%H:F37$$\"0XWpyhR7 \"F3$\"%pDF37$$\"0]\\\\if_7\"F3$\"%(4$F37$$\"0baHYdl7\"F3$\"$Z\"F37$$ \"0gf4Iby7\"F3Febm7$$\"0lk*QJ:H6F3$\"$&=F37$$\"0qpp(4XI6F3Fi]o7$$\"0wv v(ew]6F3$\"#;F37$$\"0#==y23r6F3$!$x$F37$$\"0OOOj34=\"F3$\"$^\"F37$$\"0 \"44*[O2>\"F3$\"$3'F37$$\"0==oT]c>\"F3$\"$G)F37$$\"0YXXMk0?\"F3$\"%&R \"F37$$\"0Gxk#Gz,7F3$\"%6;F37$$\"054%38-.7F3$\"%U=F37$$\"0#4M!z\\U?\"F 3$\"%y?F37$$\"0tsAFya?\"F3$\"$9#F37$$\"0OOhBNz?\"F3$\"$@#F37$$\"0+++?# R57F3F_co7$$\"0SR*y#[e@\"F3$\"$.#F37$$\"0zyyN/8A\"F3$\"$i\"F37$$\"0==o VgnA\"F3$\"#]F37$$\"0edd^;AB\"F3$!$_\"F37$$\"0GF_bW\\B\"F3$!$d#F37$$\" 0(pp%fswB\"F3$!$P$F37$$\"0mmTj+/C\"F3Fdt7$$\"0OOOnGJC\"F3$!$a$F37$$\"0 wvDv%e[7F3$!$E\"F37$$\"0:::$3/a7F3$\"$0$F37$$\"0666OV*e7F3$\"$.)F37$$ \"0222*e%QE\"F3$\"%Q9F37$$\"0...U[(o7F3$\"$'GF37$$\"0**)*)\\4lt7F3Fg`o 7$$\"0&\\\\zMby7F3F_co7$$\"0\"444gX$G\"F3F`em7$$\"0(ooQ&e$)G\"F3$!$g\" F37$$\"0$GGo5E$H\"F3$!$='F37$$\"0a``0*>98F3$!$+#F37$$\"0CCC/P^L\"F3Fgv 7$$\"0gf%e'3vL\"F3$\"$[&F37$$\"0&\\\\u-))R8F3$\"$=&F37$$\"0II0*=DU8F3$ \"$V%F37$$\"0mll]BYM\"F3$\"$(QF37$$\"0,,E7&*pM\"F3$\"$f$F37$$\"0OO'QnO \\8F3$\"$2$F37$$\"0srYNQ>pmR$o8F3$!$!eF,7$$\"0aaHG62P\"F3$\"&t]\"F,7$$\"0!**)*)*G3t8F3$\" &Ah#F,7$$\"0;m.IzVP\"F3$\"&s!GF,7$$\"0UU/9F3$\"&0U\"F,7$$\"0Y'RLH\\09F3$\"&&*R\"F,7$$\" 0ssZL*y19F3$\"&wS\"F,7$$\"0)*[ht&339F3$\"&w[\"F,7$$\"0DDv8#Q49F3$\"&Mm \"F,7$$\"0_,*Q&y1T\"F3$\"&X\">F,7$$\"0yx-%\\(>T\"F3$\"&L7\"F,7$$\"0/a; MrKT\"F3$\"&l=\"F,7$$\"0IIIunXT\"F3$\"&i>\"F,7$$\"0ee$ot+<9F3$\"&f9\"F ,7$$\"0'oo$*pW>9F3$\"&J9\"F,7$$\"09:!>m)=U\"F3$\"&/@\"F,7$$\"0VVVCEVU \"F3$\"&/J\"F,7$$\"0++]\\0#H9F3$\"&ki\"F,7$$\"0cccu%3M9F3$\"&r4#F,7$$ \"0qppCVQW\"F3$\"&I$>F,7$$\"0$GG[qe9F3$\"&uI\"F,7$$\"0EDD3_7Y\"F3$\"&%H7F,7$$\"0SRR>-QY \"F3$\"%^&)F,7$$\"0a``I_jY\"F3$\"%'=$F,7$$\"0onnT-*o9F3$\"%E?F,7$$\"0# ==GDXr9F3$\"&N+\"F,7$$\"0'ffRE+u9F3$\"&uA#F,7$$\"0..`px_Z\"F3$\"&U]#F, 7$$\"0555v_lZ\"F3$\"&^N#F,7$$\"0<F,7$$\"0CCC'G5z9F3 $\"&\"Q;F,7$$\"0QQQ(Hl\"[\"F3$\"&%z;F,7$$\"0___3.U[\"F3$\"&(p;F,7$$\"0 !333LI*[\"F3$\"&ll\"F,7$$\"0444`.W\\\"F3$\"&))p\"F,7$$\"0MM4t'*o\\\"F3 $\"&3!=F,7$$\"0gf4$**Q*\\\"F3$\"&g*=F,7$$\"0&[)48$)=]\"F3$\"&Q%=F,7$$ \"0555LwV]\"F3$\"&fd\"F,7$$\"0sA5$Hi0:F3$\"&YW\"F,7$$\"0NN5`po]\"F3$\" &OS\"F,7$$\"0)z/Jh63:F3$\"&GZ\"F,7$$\"0gg5ti$4:F3$\"&yb\"F,7$$\"0Bt5L4 1^\"F3$\"&ro\"F,7$$\"0'e3Jf&=^\"F3$\"&Gv\"F,7$$\"0[)4JD58:F3$\"&\\x\"F ,7$$\"06668\\V^\"F3$\"&xu\"F,7$$\"0ih6`N$>:F3$\"&1m\"F,7$$\"0777$>KC:F 3$\"&+i\"F,7$$\"0PP78:o_\"F3$\"&(3ohf\"F3$\"%&\\$F,7$$\"0jiiEzih\"F3$\"%udF,7$$\"0WWW] ili\"F3$\"$*\\F37$$\"0EEEuXoj\"F3$\"$S&F37$$\"0sr@b;%R;F3$\"$t&F37$$\" 0<<k\"F3$\"$)[F37$$\"0ii7F37$$\"0!*R_wI=p\"F3$\"%h=F37$$\"077i_0Jp \"F3$\"%aF37$$\"0777\"))z^F37$$\"0utB'Q[aF3$\"$`#F37$$\"0jii3D!>>F3Fbq7$$\"0kj)[ju@>F3$\"$ x(F37$$\"0lk9hnW#>F3$\"$K)F37$$\"0mlS())=F>F3$\"$J)F37$$\"0nmm85*H>F3$ \"$l(F37$$\"0po=m_`$>F3$\"$@%F37$$\"0rqq=&zS>F3$!$e\"F37$$\"0!**)R,3b% >F3$!$H(F37$$\"0544%3A]>F3$!%17F37$$\"0qoVDxD&>F3$!%i8F37$$\"0HGymL\\& >F3$!%V9F37$$\"0)yG\"3!Hd>F3$!%T9F37$$\"0[ZZ\\Y'f>F3$!%f8F37$$\"0nm;Kf V'>F3$!%05F37$$\"0'ee[@2p>F3$!$$fF37$$\"0YX?cG9(>F3$!$q%F37$$\"000b(\\ yt>F3$!$o%F37$$\"0kk*)QTh(>F3$!$H'F37$$\"0CCC!y\\y>F3$!$y*F37$$\"0yxFN s6)>F3$!%#f\"F37$$\"0JJJ!p%Q)>F3$!%[BF37$$\"033$yT=&)>F3$!%>FF37$$\"0% [[`9_')>F3$!%FIF37$$\"0hh'G(ey)>F3$!$c\"F37$$\"0QQQ+'>*)>F3$!$;$F37$$ \"0XXX5XX*>F3$!%$f\"F37$$\"0___?%*)**>F3$!%\"z#F37$$\"011cvoD+#F3$!%YJ F37$$\"0fffIV_+#F3$!%8LF37$$\"0OO6e!e1?F3$!%JLF37$$\"078j&y\"z+#F3$!%4 LF37$$\"0*)*[J^D4?F3$!%`KF37$$\"0mmmS#f5?F3$!%iJF37$$\"0utt]Tf,#F3$!%$ f#F37$$\"0\"3331H@?F3$!%'*=F37$$\"0sss&3/J?F3$!$g*F37$$\"0kkk5\"zS?F3$ !$L(F37$$\"0gg5Bmc/#F3F`ar7$$\"0cccNT00#F3$!$j)F37$$\"0__-[;a0#F3$!$%* )F37$$\"0[[[g\"Hg?F3$!$a)F37$$\"0++]ACc1#F3Ff]s7$$\"0^^^%o&42#F3$!$%eF 37$$\"0-.`Y*Gw?F3$!$,&F37$$\"0aaa3A;3#F3$!$,'F37$$\"011cqap3#F3$!$(**F 37$$\"0eddK(G#4#F3$!%rw4#F3$!%`HF37$$\"0hggc_H5#F3$!%6X F37$$\"0//ar`v5#F3$!%rgF37$$\"0[ZZ'[:7@F3$!%7xF37$$\"0\"449gv;@F3$!%$G *F37$$\"0MMM;d87#F3$!&<1\"F37$$\"0yxFJef7#F3$!&Q:\"F37$$\"0@@@Yf08#F3$ !&%*=\"F37$$\"0kk9hg^8#F3$!&p:\"F37$$\"0333wh(R@F3$!&<0\"F37$$\"0==o%= QU@F3$!%/'*F37$$\"0GGG$>+X@F3$!%!\\)F37$$\"0QQ)=?iZ@F3$!%,sF37$$\"0[[[ 5U-:#F3$!%!z&F37$$\"0ee3>iG:#F3$!%6VF37$$\"0oooF#[b@F3$!%FGF37$$\"0yyG O-\"e@F3$!%99F37$$\"0*))))[Csg@F3Ffdo7$$\"0544iif;#F3$\"%#f\"F37$$\"0I HHz-7<#F3$\"%E=F37$$\"0SR*yG#Q<#F3$\"%i7F37$$\"0]\\\\'HWw@F3$\"$T#F37$ $\"0gf40j!z@F3$!%v6F37$$\"0qpp8$o\"=#F3$!%lGF37$$\"0322,9U=#F3$!%jXF37 $$\"0XWW)[u'=#F3$!%\\gF37$$\"0988K5!)=#F3$!%%f'F37$$\"0#==edF*=#F3$!%M pF37$$\"0^]]>T0>#F3$!%:JF37$$\"0?>>j1=>#F3$!%7JF37$$\"0%RRz$oo>#F3$!%B JF37$$\"0poo7I>?#F3$!%KJF37$$\"0===i`?@#F3$!%1JF37$$\"0onn6x@A#F3$!%TI F37$$\"0)zzz3TUAF3$!%CHF37$$\"0GGGkWEE#F3$!%EGF37$$\"0ihhICFF#F3$!%wFF 37$$\"0&\\\\pR!GG#F3$!%[FF37$$\"0GGGj$)GH#F3$!%lFF37$$\"0ihhHjHI#F3$!% KGF37$$\"0!)zz4IBK#F3$!%OIF37$$\"0)zz**opTBF3$!%1KF37$$\"0EEE\"\\;_BF3 $!%pLF37$$\"0aaa#HjiBF3$!%fPF37$$\"0oo=$p'yO#F3$!%\"3%F37$$\"0#GGQ45tB F3$!%'[%F37$$\"0*)*[TzrvBF3$!%5ZF37$$\"0'ppW\\LyBF3$!%O\\F37$$\"0]+jWV 'zBF3$!%[]F37$$\"0//z%>&4Q#F3$!%PFF37$$\"0e2&\\/E#Q#F3$!%MFF37$$\"0666 &*oNQ#F3$!%IFF37$$\"0;;;]ANS#F3$!%kEF37$$\"0@@@0wMU#F3$!%2EF37$$\"0onn RwaY#F3$!%lCF37$$\"0KKK]\")\\Z#F3$!%HCF37$$\"0(pp4m[%[#F3$!%)R#F37$$\" 0ihhr\"*R\\#F3$!%zBF37$$\"0EEE#o\\.DF3$!%vBF37$$\"0YYYu,S^#F3$!%\"R#F3 7$$\"0mmmm1X_#F3$!%ICF37$$\"0'oo)e6]`#F3$!%+DF37$$\"0222^;ba#F3F`at7$$ \"0---GScc#F3$!%sHF37$$\"0(pp\\Sw&e#F3$!%MOF37$$\"0cc\")Rt#)e#F3$!%PPF 37$$\"0;;mu#y!f#F3$!%SQF37$$\"0'f%3UP?f#F3$!%#*QF37$$\"0wv]4#H$f#F3$!% IDF37$$\"0c0$pna%f#F3$!%JDF37$$\"0ONNW,ef#F3$!%MDF37$$\"0ba/9?3g#F3$!% \\DF37$$\"0utt$)Qeg#F3$!%jDF37$$\"0777Bweh#F3$!%hDF37$$\"0]]]i8fi#F3Fi et7$$\"0'ee==)ok#F3$!%oCF37$$\"0@@@,]ym#F3$!%_CF37$$\"0!)zzC1vn#F3$!%Z CF37$$\"0QQQ[iro#F3$!%XCF37$$\"0(pp>(=op#F3$!%cCF37$$\"0cbb&\\Z1FF3$!% &\\#F37$$\"0$GGoNDEFF3$!%qEF37$$\"0555=Kgu#F3$!%QGF37$$\"0cccm\"\\^FF3 $!%UGF37$$\"0...:^pv#F3$!%,(yw# F3$!%vEF37$$\"0*)))))3*yyFF3$!%^CF37$$\"0#==e!3(*y#F3$!%rAF37$$\"0WVV< ^Yz#F3$!%YAF37$$\"0000H%f*z#F3$!%sAF37$$\"0mmmSPX!GF3$!%\\BF37$$\"0GGG _![4GF3$!%dCF37$$\"0!**)*QOU9GF3$!%ZDF37$$\"0_^^vm$>GF3$!%yCF37$$\"098 8()4V#GF3$!%/FF37$$\"0vuu)HDHGF3$!%IHF37$$\"0YY'\\#3V$GF3$!%%3$F37$$\" 0===^j$RGF3$!%UJF37$$\"0!**)Rx=W%GF3$!%=JF37$$\"0ihh.u%\\GF3$!%WIF37$$ \"0000c%efGF3$!%cGF37$$\"0[[[3&ppGF3$!%TFF37$$\"0000Pf-*GF3$!%sFF37$$ \"0ihhlB3\"HF3$!%NGF37$$\"0kjjBE(HHF3$!%!=$F37$$\"0mll\")G'[HF3$!%IVF3 7$$\"0edde.(eHF3$!%a^F37$$\"0]\\\\Ny(oHF3$!%>eF37$$\"0[Zs/(HrHF3$!%@fF 37$$\"0YX&Rd\"Q(HF3$!%%)fF37$$\"0WV=VMj(HF3$!%3gF37$$\"0UTT7`)yHF3$!%& )fF37$$\"0QP(30*Q)HF3$!%\"z&F37$$\"0LLL*y#*))HF3$!%%Q&F37$$\"0FFF(f#*) *HF3$!%&*RF37$$\"0@@@0C*3IF3$!%Y@F37$$\"0:::8A*=IF3$!$P&F37$$\"0444@?* GIF3$\"#HF37$$\"0!33[]hRIF3$!$P'F37$$\"0___))4.0$F3$!%X9F37$$\"0CCCs/5 1$F3$!$R%F37$$\"0'fff&*prIF3$!$*=F37$$\"0111-v04$F3$!$:)F37$$\"0;;;[]% 4JF3$!%Q5F37$$\"0MMMmR.7$F3$!$()*F37$$\"0___%)G78$F3$!$8*F37$$\"0qqq-= @9$F3$!$%oF37$$\"0*))))3s+`JF3Figm7$$\"0gff&Q$G;$F3$\"%,7F37$$\"0III]g E<$F3$\"%HHF37$$\"0,,,:([#=$F3$\"%-[F37$$\"0srrz8B>$F3$\"%HhF37$$\"0\" 3eNXu%>$F3$\"%yiF37$$\"0!**)RFvr>$F3$\"%JjF37$$\"0**)R7gg*>$F3Fjiu7$$ \"0333vO??$F3$\"%8hF37$$\"0EEwA)*o?$F3$\"%?aF37$$\"0WWWqf<@$F3$\"%WUF3 7$$\"0ii7=@m@$F3$\"%KEF37$$\"0!33eE[@KF3$\"$*pF37$$\"0)*)*[8WjA$F3F_er 7$$\"0<<-%H$F 3$!%cUF37$$\"0yxxyq#*H$F3$!%<]F37$$\"0TSSe>XI$F3$!%@bF37$$\"0sr@)R92LF 3$!%gcF37$$\"0/..Qo(4LF3$!%CdF37$$\"0NM%yFR7LF3$!%8dF37$$\"0mll<<]J$F3 $!%LcF37$$\"0999VoXK$F3$!%X[F37$$\"0jiio>TL$F3$!%`NF37$$\"0766%4nVLF3$ !%y?F37$$\"0gff>AKN$F3F]`l7$$\"0GFF@3NP$F3$\"%!*=F37$$\"0&\\\\HUz$R$F3 $\"%'y#F37$$\"0WVV\"Gp.MF3$\"%yBF37$$\"0#>>*R\"f8MF3$\"%e;F37$$\"0;;;p S&=MF3$\"%e8F37$$\"0SSS)**[BMF3$\"%Q7F37$$\"0kkkFR%GMF3$\"%89F37$$\"0* ))))o&)QLMF3$\"%'*>F37$$\"0\"44aOvQMF3$\"%$=$F37$$\"0$HHR(=TW$F3$\"%!* \\F37$$\"0%R*=G,oW$F3$\"%4hF37$$\"0&\\\\CQ[\\MF3$\"%ZtF37$$\"0'f4nj;_M F3$\"%v')F37$$\"0(pp4*[[X$F3$\"&_+\"F37$$\"0)zH_9`dMF3$\"&F9\"F37$$\"0 **)*[*R@gMF3$\"&UF\"F37$$\"0++v`'*GY$F3$\"&ER\"F37$$\"0,,,3zbY$F3$\"&/ \\\"F37$$\"0--Fih#oMF3$\"&%f:F37$$\"0..`;W4Z$F3$\"&Af\"F37$$\"0//zqEOZ $F3$\"&:e\"F37$$\"0000D4jZ$F3$\"&8_\"F37$$\"0#=o&RI'yMF3$\"&jU\"F37$$ \"0ee3a^4[$F3$\"&;H\"F37$$\"0NNgosK[$F3$\"&%>6F37$$\"0777$Qf&[$F3$\"%d \"*F37$$\"0*))Qw\\\"z[$F3$\"%5pF37$$\"0ml:7O-\\$F3$\"%8YF37$$\"0UUnEdD \\$F3$\"%&\\#F37$$\"0>>>Ty[\\$F3$\"$s)F37$$\"0ssAq?&*\\$F3$!$!**F37$$ \"0EEE*H;/NF3F`_v7$$\"0!)zHG0)3NF3Fjdr7$$\"0LLLdZM^$F3$!%K7F37$$\"0=== D6T_$F3$!%T6F37$$\"0...$\\xMNF3$!%v5F37$$\"0)yy3'Qaa$F3$!%s5F37$$\"0ts sG-hb$F3$!%m5F37$$\"0SSS7^hd$F3$!%(G\"F37$$\"0333'**>'f$F3$!%k=F37$$\" 0www9bgh$F3$!%X7F37$$\"0XXXL5fj$F3$!$J'F37$$\"0sss?%RQOF3Fcjq7$$\"0+++ 3y3k$F3$!$7)F37$$\"0FFF&>OVOF3$!$n(F37$$\"0aaa#e%ek$F3$!$(pF37$$\"0444 d83l$F3$!$J%F37$$\"0kjjJ\"ybOF3$!$^#F37$$\"0===1\\2m$F3$!$?#F37$$\"0ts s!orlOF3$!$*GF37$$\"0GFFb%oqOF3$!$'QF37$$\"0#==)H_cn$F3$!$k%F37$$\"0++ +(ey&o$F3$!$:&F37$$\"0===W>fp$F3Fhcw7$$\"0FFxA')4q$F3$!$?&F37$$\"0OOO, `gq$F3$!$7&F37$$\"0YX&*z>6r$F3$!$e%F37$$\"0baae'=;PF3$!$J$F37$$\"0===+ Gps$F3$\"$e#F37$$\"0#===%pwt$F3$\"%]5F37$$\"0tsAxa.u$F3$\"%(>\"F37$$\" 0kjj7SIu$F3$\"%%H\"F37$$\"0ba/[Ddu$F3$\"%I8F37$$\"0YXX$3T[PF3$\"%'G\"F 37$$\"0GFFa\"y`PF3$\"$W*F37$$\"0444D_\"fPF3$\"$i#F37$$\"0yyy2,!pPF3$!% `9F37$$\"0[[[!*\\)yPF3$!%PCF37$$\"0===t)p)y$F3$!%O>F37$$\"0)yyeva)z$F3 $!%#[\"F37$$\"000I2y4!QF3$!%&f\"F37$$\"0AAse3M!QF3$!%t;F37$$\"0SR95Re! QF3F\\r7$$\"0dcchp#3QF3$!%+F37$$\"0999m1!z QF3$!%*4$F37$$\"0ihhvw$*)QF3$!%@UF37$$\"0444&ou**QF3$!%#o&F37$$\"0ccc% p65RF3$!%XpF37$$\"0////([?RF3$!%\">(F37$$\"0iii\"[zHRF3$!%)3'F37$$\"0@ @@f-\"RRF3$!%;SF37$$\"0]]+[cP%RF3$!%pHF37$$\"0!)zzO5%[RF3$!%+AF37$$\"0 WW>JP2&RF3$!%\"*>F37$$\"044fDkI&RF3$!%M>F37$$\"0ut)*>\"RbRF3$!%Y?F37$$ \"0QQQ9=x&RF3$!%HBF37$$\"0eeeP.I'RF3$!%VNF37$$\"0yyyg)GoRF3$!%&*\\F37$ $\"0$Q)e\"*4'pRF3$!%V_F37$$\"0))))QAJ4(RF3$!%hOF37$$\"0$R*=`_A(RF3$!%d OF37$$\"0)*)*)RQdtRF3$!%_OF37$$\"034fX;i(RF3$!%VOF37$$\"0>>>2f)yRF3$!% LOF37$$\"0SRRIWT)RF3$!%;OF37$$\"0gff`H%*)RF3$!%6OF37$$\"0qp>:s?*RF3$!% EOF37$$\"0!)zzw9Z*RF3$!%jOF37$$\"0!**)RQdt*RF3$!%SPF37$$\"\"%F)$!%yQF3 -%'COLOURG6&%$RGBGF(F($\"*++++\"F2-%+AXESLABELSG6$Q\"x6\"Q!Fcex-%%VIEW G6$;F(Fedx%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 " " 0 "" {TEXT -1 123 "We can investigate the error obtained by applying polynomial interpolation compared with using (partial) Runge-Kutta st eps." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 193 "de := diff(y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3;\nic \+ := y(0)=1;\ngn2 := desolveRK(\{de,ic\},y(x),x=0..4,method=rk78,output= rkstep);\nevalf[15](plot('gn2'(x)-g(x),x=0..4,color=magenta,numpoints= 100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\" xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3-%$cosG6#,$*&\"\"$F3F,F3F3 F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\" \"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 693 138 138 {PLOTDATA 2 "6&-%'CURVE SG6#7e]l7$$\"\"!F)$\"\"\"!#:7$$\"0(ooooKFU!#;$!$`\"!#97$$\"057779k1'F0 $!$c#F37$$\"0PPPP,b!zF0$!$a$F37$$\"0NNNNC'R*)F0$!$V$F37$$\"0NLLLZP(**F 0$!$E$F37$$\"0BBB)33\\5F,$!$@$F37$$\"0888.(y+6F,$!$I$F37$$\"0...=$\\_6 F,$!$#QF37$$\"0$HHH$*>/7F,$!$=%F37$$\"07666(H38F,$!$+%F37$$\"0IHH*[R79 F,$!$&QF37$$\"0RQQyVWY\"F,$!$y$F37$$\"0[ZZn#\\;:F,$!$w$F37$$\"0---7Rs;F,$!$b%F37$$\"0!**)Rs#H)p\"F,$!$_%F37$$\"0)zzzM>C F,$!$@%F37$$\"0&\\\\\\D+N?F,$!$6%F37$$\"0====HI3#F,$!$3%F37$$\"0UTT \"e0J@F,$!$4%F37$$\"0lkkW#3z@F,$!$>%F37$$\"0)yyy!4rA#F,$!$W%F37$$\"0MM MMiJK#F,$!$h%F37$$\"0\"333c@>CF,Fdq7$$\"0?>>zI\"=EF,Fbs7$$\"0edd(f/HF,F_q7$$\"0:::vM8(HF,$!$\\%F 37$$\"0MMMMkF-$F,Feu7$$\"0sss_Bc7$F,$!$a%F37$$\"0666r#[GKF,$!$Z%F37$$ \"0uttLTNV$F,$!$N%F37$$\"0OOO'**fQOF,$!$E%F37$$\"0ccc'z_\\QF,$!$P%F37$ $\"0xww'fXgSF,Fhw7$$\"0nmmYTiC%F,F]s7$$\"0dcc'p-KWF,$!$M%F37$$\"0WVVVx 6k%F,$!$G%F37$$\"0III!zK][F,$!$I%F37$$\"0KLL`K`&\\F,$!$Q%F37$$\"0NOO;P .1&F,Fhw7$$\"0SRRzT`;&F,$!$X%F37$$\"0UUUUY.F&F,Fiz7$$\"0011EHFZ&F,F]s7 $$\"0qpp47^n&F,F]s7$$\"0]]]5yE/'F,$!$V%F37$$\"0///k\\(zkF,$!$f%F37$$\" 0;;;c1+&oF,$!$k%F37$$\"0===Q.2G(F,$!$w%F37$$\"0lkk/V>m(F,$!$\"\\F37$$ \"0+..88lw(F,$!$&\\F37$$\"0STT@$3ryF,$!$)\\F37$$\"0!)zzH`c(zF,$!$%\\F3 7$$\"0===QB-3)F,Fj]l7$$\"0!zyyUPz#)F,$!$/&F37$$\"0ddd>>\"\\dF*F,$!$r& F37$$\"0???5h'y$*F,$!$v&F37$$\"0][[3t:[*F,$!$q&F37$$\"0lii2HI`*F,$!$k& F37$$\"0!onn][%e*F,$!$a&F37$$\"0!44f5%fj*F,$!$N&F37$$\"00000(R(o*F,$!$ 4&F37$$\"0?Bt?@Tr*F,F[]l7$$\"0STTOX3u*F,$!$y%F37$$\"0gf4_pvw*F,$!$z%F3 7$$\"0!yxxOH%z*F,$!$#[F37$$\"0:99*>uZ)*F,$!$)[F37$$\"0]]]I!>,**F,$!$$ \\F37$$\"0KKKp33+\"F3Fb^l7$$\"0gffN)\\65F3$!$9&F37$$\"0;;;74,.\"F3$!$O &F37$$\"0tss))>([5F3$!$g&F37$$\"0ccc&*p(e5F3$!$s&F37$$\"0SSS-?)o5F3$!$ $eF37$$\"0CCC4q)y5F3$!$)eF37$$\"0333;?*)3\"F3$!$x&F37$$\"0[[['GI*4\"F3 $!$M&F37$$\"0*))))obo46F3$!$7%F37$$\"0IHHFo+7\"F3$!$B\"F37$$\"0qpp(4XI 6F3$\"$U\"F37$$\"0wvv(ew]6F3$\"$_\"F37$$\"0#==y23r6F3$\"$i\"F37$$\"0OO Oj34=\"F3$\"$n\"F37$$\"0\"44*[O2>\"F3$\"$w\"F37$$\"0YXXMk0?\"F3$\"$%>F 37$$\"0+++?#R57F3$\"$=#F37$$\"0edd^;AB\"F3$\"$R#F37$$\"0:::$3/a7F3$\"$ i#F37$$\"0**)*)\\4lt7F3$\"$;$F37$$\"0$GGo5E$H\"F3$\"$\\$F37$$\"0CCC/P^ L\"F3$\"$Q&F37$$\"0!**)*)*G3t8F3$\"%`tF,7$$\"0IIIunXT\"F3$\"&\\7\"F,7$ $\"0$GG[KC:F3$\"&ohf\"F3$\"%*4'F,7$$\"0jiiEzih\"F3$ \"%&Q&F,7$$\"0!**)*=ATd;F3$\"$3%F37$$\"0,,,d/#)p\"F3$\"$6$F37$$\"0UUU] )oNX()=F3$F0F37$$\"0baa)\\D(*=F3$!#>F3Fc dm7$$\"0rqq=&zS>F3Fcdm7$$\"0544%3A]>F3$!#>F37$$\"0[ZZ\\Y'f>F3$!#DF37$$ \"0'ee[@2p>F3$!#SF37$$\"0CCC!y\\y>F3$!#pF37$$\"0JJJ!p%Q)>F3$!#(*F37$$ \"0QQQ+'>*)>F3$!$?\"F37$$\"0XXX5XX*>F3$!$>\"F37$$\"0___?%*)**>F3$!$;\" F37$$\"0mmmS#f5?F3$!$9\"F37$$\"0\"3331H@?F3$!$6\"F37$$\"0kkk5\"zS?F3$! $2\"F37$$\"0[[[g\"Hg?F3$!$.\"F37$$\"0^^^%o&42#F3$!$-\"F37$$\"0aaa3A;3# F3$!$+\"F37$$\"0eddK(G#4#F3$!$/\"F37$$\"0hggc_H5#F3$!$5\"F37$$\"0[ZZ'[ :7@F3$!$C\"F37$$\"0MMM;d87#F3$!$^\"F37$$\"0@@@Yf08#F3$!$-#F37$$\"0333w h(R@F3$!$\"HF37$$\"0[[[5U-:#F3$!$n%F37$$\"0*))))[Csg@F3$!$v(F37$$\"054 4iif;#F3$!%/5F37$$\"0IHHz-7<#F3$!%(H\"F37$$\"0]\\\\'HWw@F3$!%t;F37$$\" 0qpp8$o\"=#F3$!%_@F37$$\"0322,9U=#F3$!%ECF37$$\"0XWW)[u'=#F3$!%MFF37$$ \"0#==edF*=#F3$!%xIF37$$\"0?>>j1=>#F3$!%2JF37$$\"0%RRz$oo>#F3$!%&3$F37 $$\"0poo7I>?#F3$!%hIF37$$\"0===i`?@#F3$!%=IF37$$\"0onn6x@A#F3$!%xHF37$ $\"0)zzz3TUAF3$!%(*GF37$$\"0GGGkWEE#F3$!%DGF37$$\"0ihhHjHI#F3$!%*p#F37 $$\"0!)zz4IBK#F3$!%^EF37$$\"0)zz**opTBF3$!%@EF37$$\"0EEE\"\\;_BF3$!%>E F37$$\"0aaa#HjiBF3$!%OEF37$$\"0#GGQ45tBF3$!%zEF37$$\"0666&*oNQ#F3$!%JF F37$$\"0;;;]ANS#F3$!%(o#F37$$\"0@@@0wMU#F3$!%[EF37$$\"0onnRwaY#F3$!%vD F37$$\"0EEE#o\\.DF3$!%ADF37$$\"0mmmm1X_#F3$!%*\\#F37$$\"0222^;ba#F3$!% $[#F37$$\"0aaaRybb#F3$!%![#F37$$\"0---GScc#F3Fbdn7$$\"0]\\\\;-dd#F3$!% \"\\#F37$$\"0(pp\\Sw&e#F3$!%6DF37$$\"0ONNW,ef#F3$!%GDF37$$\"0utt$)Qeg# F3$!%@DF37$$\"0777Bweh#F3$!%9DF37$$\"0]]]i8fi#F3$!%5DF37$$\"0@@@,]ym#F 3$!%#\\#F37$$\"0cbb&\\Z1FF3$!%&[#F37$$\"0555=Kgu#F3$!%%[#F37$$\"0...:^ pv#F3Fggn7$$\"0'ff>,(yw#F3Fbdn7$$\"0*)))))3*yyFF3$!%yCF37$$\"0#==e!3(* y#F3$!%rCF37$$\"0GGG_![4GF3$!%GCF37$$\"0vuu)HDHGF3$!%0CF37$$\"0ihh.u% \\GF3$!%;CF37$$\"0[[[3&ppGF3F\\in7$$\"0ihhlB3\"HF3$!%gCF37$$\"0kjjBE(H HF3$!%xCF37$$\"0mll\")G'[HF3$!%%\\#F37$$\"0edde.(eHF3$!%+DF37$$\"0]\\ \\Ny(oHF3$!%0DF37$$\"0UTT7`)yHF3Fb[o7$$\"0LLL*y#*))HF3$!%'\\#F37$$\"0@ @@0C*3IF3$!%HCF37$$\"0444@?*GIF3$!%/AF37$$\"0!33[]hRIF3$!%_>F37$$\"0__ _))4.0$F3$!%!y\"F37$$\"0CCCs/51$F3$!%!z\"F37$$\"0'fff&*prIF3$!%,=F37$$ \"0111-v04$F3$!%@=F37$$\"0;;;[]%4JF3$!%T=F37$$\"0*))))3s+`JF3$!%!*=F37 $$\"0III]gE<$F3$!%4>F37$$\"0srrz8B>$F3$!%A>F37$$\"0333vO??$F3$!%@>F37$ $\"0WWWqf<@$F3$!%3>F37$$\"0!33eE[@KF3$!%y=F37$$\"0<<=F37$$ \"0\"444i6_KF3$!%4:F37$$\"0lkk!o-tKF3$!%c6F37$$\"0;::*>-%H$F3$!%r6F37$ $\"0mll<<]J$F3$!%%=\"F37$$\"0gff>AKN$F3$!%37F37$$\"0GFF@3NP$F3$!%?7F37 $$\"0&\\\\HUz$R$F3$!%C7F37$$\"0WVV\"Gp.MF3$!%>7F37$$\"0#>>*R\"f8MF3$!% *>\"F37$$\"0SSS)**[BMF3$!%h6F37$$\"0*))))o&)QLMF3$!%\"4\"F37$$\"0(pp4* [[X$F3$!$u(F37$$\"0000D4jZ$F3$!$6$F37$$\"0>>>Ty[\\$F3$!$*pF37$$\"0LLLd ZM^$F3$!$p*F37$$\"0...$\\xMNF3$!$r*F37$$\"0tssG-hb$F3$!$q*F37$$\"0SSS7 ^hd$F3Fjeo7$$\"0333'**>'f$F3$!$i*F37$$\"0UUUbFhg$F3$!$`*F37$$\"0www9bg h$F3$!$M*F37$$\"0566u#)fi$F3$!$+*F37$$\"0XXXL5fj$F3$!$Q)F37$$\"0+++3y3 k$F3$!$*yF37$$\"0aaa#e%ek$F3$!$p(F37$$\"0444d83l$F3$!$n(F37$$\"0kjjJ\" ybOF3Feho7$$\"0tss!orlOF3$!$k(F37$$\"0#==)H_cn$F3$!$g(F37$$\"0===W>fp$ F3$!$a(F37$$\"0baae'=;PF3$!$Y(F37$$\"0===+Gps$F3$!$U(F37$$\"0#===%pwt$ F3$!$S(F37$$\"0YXX$3T[PF3$!$V(F37$$\"0444D_\"fPF3$!$d(F37$$\"0[[[!*\\) yPF3$!$%))F37$$\"0)yyeva)z$F3$!%46F37$$\"0EDDn\"*z\"QF3$!%%4\"F37$$\"0 jiiyNu$QF3$!%w5F37$$\"0QQQA@#eQF3$!%d5F37$$\"0999m1!zQF3$!%T5F37$$\"0i hhvw$*)QF3$!%P5F37$$\"0444&ou**QF3$!%R5F37$$\"0#GG)*=$\\!RF3$!%Y5F37$$ \"0ccc%p65RF3$!%f5F37$$\"0III*>I:RF3$!%y5F37$$\"0////([?RF3$!%56F37$$ \"0iii\"[zHRF3F^bo7$$\"0@@@f-\"RRF3$!%\"R\"F37$$\"0]]+[cP%RF3$!%K:F37$ $\"0!)zzO5%[RF3$!%:F37$$\"0QQQ9=x&RF3$!%iAF37$ $\"0[[)f2OgRF3$!%vCF37$$\"0eeeP.I'RF3$!%>FF37$$\"0oo=*fklRF3$!%'*HF37$ $\"0yyyg)GoRF3$!%8LF37$$\"0$Q)e\"*4'pRF3$!%([$F37$$\"0))))QAJ4(RF3$!%h OF37$$\"0$R*=`_A(RF3$!%dOF37$$\"0)*)*)RQdtRF3$!%_OF37$$\"034fX;i(RF3$! %VOF37$$\"0>>>2f)yRF3$!%LOF37$$\"0gff`H%*)RF3$!%(f$F37$$\"\"%F)$!%iNF3 -%'COLOURG6&%$RGBG$\"*++++\"!\")F(Fjdp-%+AXESLABELSG6$Q\"x6\"Q!Faep-%% VIEWG6$;F(Fbdp%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph co mpares the two methods of interpolation in terms of their errors. The \+ discrete points give the errors at the interpolation points whose hori zontal location is determined by extracting the " }{TEXT 286 1 "x" } {TEXT -1 38 " coordinates from a discrete solution." }}{PARA 0 "" 0 " " {TEXT -1 74 "The error curve for the polynomial interpolation obtain ed via the option \"" }{TEXT 262 15 "output=rkinterp" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" }{TEXT -1 107 " while the error cur ve for interpolation obtained by performing Runge-Kutta steps obtained via the option \"" }{TEXT 262 13 "output=rkstep" }{TEXT -1 15 "\" is shown in " }{TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 584 "de := diff( y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3;\nic := y(0)=1;\ngn1 := desolveRK( \{de,ic\},x=0..1.6,method=rk78,output=rkinterp):\ngn2 := desolveRK(\{d e,ic\},x=0..1.6,method=rk78,output=rkstep):\npts := desolveRK(\{de,ic \},x=0..1.6,method=rk78,output=points):\npts2 := [seq([pts[i,1],evalf[ 18](gn2(pts[i,1])-g(pts[i,1]))],i=1..nops(pts))]:\np1 := plot([pts2$3] ,style=point,symbol=[circle,diamond,cross],color=[black,coral$2]):\np2 := evalf[18](plot(['gn1'(x)-g(x),'gn2'(x)-g(x)],x=0.8..1.5,\n \+ color=[blue,magenta],numpoints=100)):\nplots[display]([p1,p2],vie w=[0.8..1.5,-8e-11..11e-11]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#de G/-%%diffG6$-%\"yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3-%$ cosG6#,$*&\"\"$F3F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 704 277 277 {PLOTDATA 2 "6)-%'CURVESG6&7<7$$\"\"!F)$\"31+++++++5!#N7$$\"3-+++++++5 !#>$!3!)***********HH(!#J7$$\"3++++G,X\\FF0$!3***********>$>+++)zw3,&FG$!3?+ ++++*Q[%F97$$\"3K++++@!pM'FG$!3!)*********\\Vd%F97$$\"3W+++5PfG!)FG$!3 9+++++A:\\F97$$\"3=+++*>-6t*FG$!3Q+++++RjZF97$$\"3\"******4j$HD6!#<$\" 3&**********znT\"F97$$\"3/+++Io'\\?\"F_p$\"34+++++pI@F97$$\"3%******\\ MQwE\"F_p$\"3')*********f`/$F97$$\"3,+++%[a_K\"F_p$\"3P++++++.^F97$$\" 3)*******yx#yP\"F_p$\"37++++Im#3*F97$$\"3#******HNV7T\"F_p$\"31++++l&e 5\"!#G7$$\"31+++B$pYW\"F_p$\"3+++++y*pQ\"F[r7$$\"33++++j?y9F_p$\"3!*** ******peA;F[r7$$\"3$******4/V%4:F_p$\"30++++FDO;F[r7$$\"3!*******Gs`S: F_p$\"3+++++ye&H\"F[r7$$\"3)*******fa-x:F_p$\"3'*********H'R*oF97$$\"3 3+++++++;F_p$\"3))********>w()fF9-%'COLOURG6&%$RGBGF)F)F)-%'SYMBOLG6#% 'CIRCLEG-%&STYLEG6#%&POINTG-F$6&F&-F[t6&F]t$\"*++++\"!\")$\")AR!)\\F\\ uF(-F_t6#%(DIAMONDGFbt-F$6&F&Fht-F_t6#%&CROSSGFbt-F$6$7a`l7$$\"\")!\" \"$\"'9vFF_p7$$\"3]___xsC4!)FG$\"'[OKF_p7$$\"30000bX\\=!)FG$\"'ReOF_p7 $$\"3IJJ\"Q>=J-)FG$\"'X\\QF_p7$$\"3gdddK=uF!)FG$\"'DCSF_p7$$\"3qqq&>l` +.)FG$!',9\\F_p7$$\"3&QQQ8ZlB.)FG$!'\\/\\F_p7$$\"3+(p>2HxY.)FG$!':')[F _p7$$\"355555\"*)p.)FG$!'^f[F_p7$$\"3::::lO[b!)FG$!'u1WF_p7$$\"3?????# yR2)FG$!';zOF_p7$$\"35777ZA;1\")FG$!'`JAF_p7$$\"3////uiMQ\")FG$!&@&**F _p7$$\"3qoo=EMWc\")FG$!&^%\\F_p7$$\"3NLLLy0au\")FG$!&!\\:F_p7$$\"3+)zz /tPE>)FG$\"%bDF_p7$$\"3jiii#)[t5#)FG$\"%LfF_p7$$\"3DEEE1\"prC)FG$!&oL# F_p7$$\"3!**)*)*)HLg$G)FG$!&XS)F_p7$$\"3;;;;Ya7c$)FG$!'CJAF_p7$$\"3!)y yy)3W(*Q)FG$!'KDFF_p7$$\"3TTTTJFOB%)FG$!'/dIF_p7$$\"3geee))GF_p7$$\"3GGGG[6v)>*FG$\"(:A 9#F_p7$$\"3lmm;MTf<#*FG$\"(Tc@#F_p7$$\"30000?rVO#*FG$\"(d(eAF_p7$$\"3X VV$f5!Gb#*FG$\"(J&oAF_p7$$\"3#====4BTF*FG$\"(4EC#F_p7$$\"3]ZZZi:[2$*FG $\"((40@F_p7$$\"38888L+%3M*FG$\"(r5&=F_p7$$\"3#====4RST*FG$\"'([h*F_p7 $$\"3wvvv0>u$[*FG$!&3p\"F_p7$$\"3!yxxFp0,_*FG$!'nESF_p7$$\"3!)zzzz%pkb *FG$!'@fF_p7$$\"3&GGGyyi)*e*FG$!'C.`F_p7$ $\"3NMM%=Wflg*FG$!'CYSF_p7$$\"3'eeee4cKi*FG$!'$e:#F_p7$$\"3&[[[)*Gv#f' *FG$\"'&Qy$F_p7$$\"3%QQQQ[%H&p*FG$\"(n))4\"F_p7$$\"3XZZsQzk/(*FG$\"(%e t7F_p7$$\"3566h$R,Sr*FG$\"(q&H9F_p7$$\"3!HHa57y'=(*FG$\"(!z(\\\"F_p7$$ \"3vuu\\[[NB(*FG$\"(qyb\"F_p7$$\"3ql!>A@$pD(*FG$\"(YWe\"F_p7$$\"3gc1%f dJ!G(*FG$\"(&[3;F_p7$$\"3]ZAmR*p.t*FG$\"(0)H;F_p7$$\"3SQQQ.$3Ft*FG$!'1 ZZF_p7$$\"3lll:8_T^(*FG$!'nKCF_p7$$\"3$HHHH7A,x*FG$\"'Z0BF_p7$$\"3&GGG G'4p-)*FG$\"(1n<\"F_p7$$\"3tsss-)f_$)*FG$\"(Jf)=F_p7$$\"3!**)*)RAu%G&) *FG$\"(C*)4#F_p7$$\"30222U]Vq)*FG$\"(&>'=#F_p7$$\"3lll!>&)G#z)*FG$\"(5 `=#F_p7$$\"3DCCuhE-)))*FG$\"(xr:#F_p7$$\"3&GGy:Z;o*)*FG$\"(lS5#F_p7$$ \"3TTTT\"G5c!**FG$\"((\\G?F_p7$$\"3bbbbX(\\>%**FG$\"(wr`\"F_p7$$\"3qpp p4#*Gy**FG$\"'S()*)F_p7$$\"3====O\"R\\+\"F_p$!'\"*eBF_p7$$\"3++++N'==, \"F_p$!'8&3*F_p7$$\"3_^^^XrX>5F_p$!(Ww^\"F_p7$$\"3CBBB;*))G-\"F_p$!(;] #>F_p7$$\"3&\\\\\\po?j-\"F_p$!(v,[#F_p7$$\"3ooooM[)*H5F_p$!(pNC$F_p7$$ \"3UUUU#)*[O.\"F_p$!(H`9%F_p7$$\"3PPP([Cpp.\"F_p$!(]:,&F_p7$$\"3KKKK2& *GS5F_p$!([2$eF_p7$$\"3onnR/\"F_p$!(!\\WlF_p7$$\"3....b$\\v/\"F_p$ !(QW#pF_p7$$\"3--_*QA.%[5F_p$!(--&pF_p7$$\"3,,,w#4d#\\5F_p$!(\"Q[pF_p7 $$\"3++]ih46]5F_p$!(ov\"pF_p7$$\"3**)*)*[I['40\"F_p$!(+l&oF_p7$$\"3(pp >#oDn_5F_p$!(=$RmF_p7$$\"3&\\\\\\fI!Qa5F_p$!(T+H'F_p7$$\"3%RRRRQlh0\"F _p$!(](zdF_p7$$\"3$HHH>Y]z0\"F_p$!(n37&F_p7$$\"3#>>>*Rbtf5F_p$!(#f9\\(F_p7$$\"3SSS!RVH$z5F_p$\"(R!p$)F_p7$$\"3+++ v_\"*3\"3\"F_p$\"(FF_ p7$$\"3cbb0C]i06F_p$!(D[H%F_p7$$\"3(ooo)fX]26F_p$!()onbF_p7$$\"3===o&4 %Q46F_p$!(VIV'F_p7$$\"3]\\\\\\JOE66F_p$!(\"y*z'F_p7$$\"3CBBt5Z%H6\"F_p $!(%[]mF_p7$$\"3(ppp**yDY6\"F_p$!(*=FgF_p7$$\"3qqq?poI;6F_p$!(qE%\\F_p 7$$\"3WWWW[z)z6\"F_p$!(1aX$F_p7$$\"3hh6**QT))=6F_p$!(sc`#F_p7$$\"3yyy` H.y>6F_p$!(M&f:F_p7$$\"3'ff%3?ln?6F_p$!']'f&F_p7$$\"3888j5Fd@6F_p$\"'R QUF_p7$$\"3II!y6!*oC7\"F_p$\"(]CM\"F_p7$$\"3[ZZs\"4lL7\"F_p$\"(\\%Q@F_ p7$$\"3lk9F#GhU7\"F_p$\"(*)Qu#F_p7$$\"3#===GZd^7\"F_p$\"(j&zIF_p7$$\"3 ==V*\\\">PD6F_p$\"'A*Q\"F_p7$$\"3ba/F_p7$$\"3YXX XA'>?8\"F_p$\"'wz?F_p7$$\"3gff4!RHe8\"F_p$\"'@()=F_p7$$\"3utttd\"R'R6F _p$\"'#GZ\"F_p7$$\"3UUUU:rBY6F_p$\"&r?)F_p7$$\"3TTTTces`6F_p$!&to&F_p7 $$\"3&[[[3.^0;\"F_p$!''3&GF_p7$$\"3;::!zW\\& F_p7$$\"3ZYY'R!>U#>\"F_p$\"'2fmF_p7$$\"3]\\\\\\7G'f>\"F_p$\"'I7&)F_p7$ $\"3;;;m%p!\\*>\"F_p$\"(x&H7F_p7$$\"3$GGGod=I?\"F_p$\"(@L%=F_p7$$\"3GG ySue'Q?\"F_p$\"(<8Z?\"F_p$\"($=g@F_p7$$\"35gAQ'*\\# \\?\"F_p$\"(gh>#F_p7$$\"3YYrx?o807F_p$\"'aK@F_p7$$\"3#G.s^k[`?\"F_p$\" '&f8#F_p7$$\"3>>pcp/c07F_p$\"'JS@F_p7$$\"3#>pc$=T)f?\"F_p$\"'-^@F_p7$$ \"3kkk9nxS17F_p$\"'-j@F_p7$$\"3bbbIiB537F_p$\"'J.AF_p7$$\"3YYYYdpz47F_ p$\"'g4AF_p7$$\"3XXX&>wgM@\"F_p$\"'e@@F_p7$$\"3WWWWmX7<7F_p$\"'iq>F_p7 $$\"3GGGyPkh?7F_p$\"'N76Q7F_p$!'IpMF_p7$$\"3JJJJ0.&*R7F_p$!'pDPF_p7$$\"3mm mmm')yT7F_p$!'rEPF_p7$$\"3----GqiV7F_p$!'\"RW$F_p7$$\"3PPPP*QlaC\"F_p$ !'#z'GF_p7$$\"3a``.\\q)*[7F_p$!&r$**F_p7$$\"3qppp3(3DD\"F_p$\"'b.F_p7$$\"3o=1G#)\\3n7F_p$\"(R&y>F_p7$$\"3DD+W7iHn7F_p$ \"(9u,#F_p7$$\"3#=V*fUu]n7F_p$\"(bm0#F_p7$$\"3QQ)eFn=xE\"F_p$\"'6wIF_p 7$$\"3^^w2L69o7F_p$\"''[-$F_p7$$\"3kkkR$fj&o7F_p$\"'!4\"HF_p7$$\"3!44M S^3%p7F_p$\"'XzDF_p7$$\"3<<F\"F_p$\" 'Ij;F_p7$$\"3AAAA)G\"F_p$!' Dp9F_p7$$\"3\"333GF>^H\"F_p$!'t9#)F_p7$$\"3$GGGj&zl)H\"F_p$!((eQ7F_p7$ $\"3&[[[)Rm>-8F_p$!(\\Li\"F_p7$$\"3gffMFj4.8F_p$!(top\"F_p7$$\"3MMM%[, '*RI\"F_p$!(dKv\"F_p7$$\"3444M-d*[I\"F_p$!(K$)y\"F_p7$$\"3%QQQ)*Q&z08F _p$!(**yz\"F_p7$$\"3feeLx]p18F_p$!((*yx\"F_p7$$\"3MLL$[w%f28F_p$!(QYs \"F_p7$$\"3333L_W\\38F_p$!(h]j\"F_p7$$\"3$GGG)RTR48F_p$!(!*p]\"F_p7$$ \"3OOOO\"4-FJ\"F_p$!'=[qF_p7$$\"3!**)*)*G/5gJ\"F_p$\"'BsYF_p7$$\"3ihh6 7i`>8F_p$\"(hOg\"F_p7$$\"3LLLL\"QiIK\"F_p$\"(0z1#F_p7$$\"3-..G8s$RK\"F _p$\"(bB6#F_p7$$\"3sssAX?\"[K\"F_p$\"(?@>#F_p7$$\"39:S@`2.D8F_p$\"(3ZA #F_p7$$\"3dd2?h%\\_K\"F_p$\"(_ZE#F_p7$$\"3++v=p\"oaK\"F_p$\"'xm]F_p7$$ \"3UUUSF_p7$$\"3_^^,t8JG8F_p$\"'zI=F_p7$$\"3\"444p.h+L\"F_p$\"'9i5 F_p7$$\"3#>>>*HU!QL\"F_p$\"'c\\NF_p7$$\"3$HHHHUZvL\"F_p$\"'S([&F_p7$$ \"3ggggG1&3M\"F_p$\"'K#)[F_p7$$\"3GGGGMQ:W8F_p$\"'xMRF_p7$$\"35555T%fg M\"F_p$\"'M3PF_p7$$\"3#>>>z/lzM\"F_p$\"'\\)\\$F_p7$$\"3$GGG8&y\"*[8F_p $\"'T^KF_p7$$\"3uttta1()\\8F_p$\"('o7GFG7$$\"3lkk9eM#3N\"F_p$\"(%*46#F G7$$\"3cbbbhix^8F_p$\"(Ha3\"FG7$$\"3....)e:_N\"F_p$!(g!*p&FG7$$\"3]]]] 9\\le8F_p$!)a&fb\"FG7$$\"3999RJkNg8F_p$!)!GQ'>FG7$$\"3yxxF[z0i8F_p$!)$ 3/<#FG7$$\"3UTT;l%fPO\"F_p$!)mAs?FG7$$\"30000#)4Yl8F_p$!)K+2;FG7$$\"32 22Kf1Hn8F_p$!(Y25(FG7$$\"3444fO.7p8F_p$\"(Snk%FG7$$\"3666'Q,]4P\"F_p$ \")L6b;FG7$$\"38888\"pzFP\"F_p$\")6jCDFG7$$\"3sssZI#)pt8F_p$\")'3mu#FG 7$$\"3KKK#)pnhu8F_p$\")CA/GFG7$$\"3#>>p\"4``v8F_p$\")\\R>FFG7$$\"3_^^^ [QXw8F_p$\")nYiDFG7$$\"3766'yQstP\"F_p$\")ExrCFG7$$\"3rqq?F4Hy8F_p$\"( o68*FG7$$\"3IIIbm%4#z8F_p$\"(E')H*FG7$$\"3!**)*)*e+G,Q\"F_p$\"('*pX*FG 7$$\"3gff4X4Z$Q\"F_p$\"(-Mg*FG7$$\"3HHHH%)Q\"oQ\"F_p$\"(d,y*FG7$$\"3ss sAPRO!R\"F_p$\")AjW5FG7$$\"3;;;;!*R\"RR\"F_p$\")5F]6FG7$$\"3'eee[\\ytR \"F_p$\")q'))H\"FG7$$\"3cbbb**H%3S\"F_p$\")suF9FG7$$\"3jiiPz2s-9F_p$\" )H5T9FG7$$\"3qpp>f&)f/9F_p$\")4a99FG7$$\"3CBt5\\u`09F_p$\")pl,9FG7$$\" 3xww,RjZ19F_p$\")yV/9FG7$$\"3II!G*G_T29F_p$\")obP9FG7$$\"3%QQQ)=TN39F_ p$\")$o\\^\"FG7$$\"3__-l>l;49F_p$\")TIC;FG7$$\"3@@@Y?*y*49F_p$\")t\\q< FG7$$\"3cb!o37&Q59F_p$\")69`=FG7$$\"3!**)RF@8z59F_p$\")4fP>FG7$$\"32dp Z@W*4T\"F_p$\")P*)y>FG7$$\"3CC*z;_(>69F_p$\")o^=?FG7$$\"3T\"*G)=i+9T\" F_p$\")K#y5\"FG7$$\"3eee3APg69F_p$\"))QI6\"FG7$$\"3'ff4P_GKT\"F_p$\")& e2=\"FG7$$\"3LLLLDL&[T\"F_p$\")5&H>\"FG7$$\"3#==o!p%>nT\"F_p$\")jE_6FG 7$$\"3III!Gh&e=9F_p$\")OGJ6FG7$$\"3yyy`cKs5V\"F_p$\")'><$=FG7$$\"3MMM%3l4GV\"F_p$\")Wr6?FG7$ $\"3RR*o_JyOV\"F_p$\")t*o2#FG7$$\"3WWWpzpaM9F_p$\")1w7@FG7$$\"3]\\*>Tk :aV\"F_p$\")lv6@FG7$$\"3baaa3VGO9F_p$\")32q?FG7$$\"3YXXX>I-Q9F_p$\")om y=FG7$$\"3OOOOI;\"FG7$$\"3#===.S7AX\"F_p$\")ti.7FG7$$\"3+++DuA:`9F_p$\") &z:B\"FG7$$\"3====[@4a9F_p$\")W=[7FG7$$\"3aaa/'*=(fX\"F_p$\").cq7FG7$$ \"3\"444Rk^yX\"F_p$\")8G+8FG7$$\"3SR*oiT8(e9F_p$\")2r48FG7$$\"3)yyG')= v&f9F_p$\")lQ18FG7$$\"3OO'))4'pVg9F_p$\")Y(4G\"FG7$$\"3&[[[Lt)Hh9F_p$ \")PzC7FG7$$\"3#==o!yA-j9F_p$\")S*4+\"FG7$$\"3zyyyAeuk9F_p$\"(([BlFG7$ $\"3+**)RF=ZkY\"F_p$\"(P(eIFG7$$\"3?>>pU&[\"o9F_p$\"(oWb\"FG7$$\"3SRRk -*\\)p9F_p$\"(m,*QFG7$$\"3gfffi7br9F_p$\")Ll[5FG7$$\"3RQQQ))*pLZ\"F_p$ \")]ci>FG7$$\"3=<<<9()=v9F_p$\")od-DFG7$$\"3'fff*Ru+x9F_p$\")!\\=A#FG7 $$\"3vuuulh#)y9F_p$\")43I;FG7$$\"3$GGGB$4k![\"F_p$\")LWr;FG7$$\"3\"444 *)pbC[\"F_p$\")2%3o\"FG7$$\"3**)*)*[l/F%[\"F_p$\")3FG-F[t6&F ]tF(F(Fjt-F$6$7hs7$F[v$!'@J\\F_p7$F^y$!'9P\\F_p7$Fhy$!'Ap\\F_p7$F\\[l$ !'v1]F_p7$Ff[l$!'5Y]F_p7$F[\\l$!'!p3&F_p7$Fe\\l$!'>E^F_p7$F_]l$!'Vo^F_ p7$Fd]l$!'#Q@&F_p7$Fi]l$!'\"3E&F_p7$F^^l$!'-6`F_p7$Fh^l$!'!oN&F_p7$F\\ `l$!'/5aF_p7$Ff`l$!'3laF_p7$F[al$!'?>bF_p7$F`al$!'fobF_p7$Feal$!'1EcF_ p7$F_bl$!'^rcF_p7$Fccl$!'<;dF_p7$F]dl$!'?UdF_p7$Fbdl$!'HXdF_p7$Fgdl$!' O2dF_p7$Fael$!'9*f&F_p7$Fefl$!'*QS&F_p7$F_gl$!'#e.&F_p7$Figl$!';/\\F_p 7$Fgil$!'%[w%F_p7$F\\jl$!'t\"y%F_p7$Fajl$!'!))z%F_p7$Ffjl$!'\"*G[F_p7$ F[[m$!'cf[F_p7$Fi\\m$!'aF\\F_p7$Fc]m$!'[+]F_p7$Fh]m$!'fu]F_p7$F]^m$!'. \\^F_p7$Fb^m$!'\"\\B&F_p7$F\\_m$!'/:`F_p7$Ff_m$!'h.aF_p7$F``m$!'>'[&F_ p7$Fj`m$!'1ybF_p7$Fhbm$!'1kcF_p7$F\\dm$!'L\\dF_p7$F`em$!'d?eF_p7$Fdfm$ !'QneF_p7$F^gm$!'PseF_p7$Fhgm$!';geF_p7$F\\im$!'hBeF_p7$Ffim$!'WadF_p7 $F`jm$!'&Gk&F_p7$Fjjm$!'^uaF_p7$F^\\n$!'L`\\F_p7$Fb]n$!'7CQF_p7$F\\^n$ !'YQIF_p7$Ff^n$!'<4?F_p7$Fj_n$!&*pcF_p7$F^an$\"'&QL\"F_p7$F\\cn$\"'J&R \"F_p7$Ffcn$\"'$GS\"F_p7$F[dn$\"'W59F_p7$F`dn$\"'8=9F_p7$Fjdn$\"'C`9F_ p7$F_en$\"'.&[\"F_p7$Fden$\"'rA:F_p7$Fien$\"'re:F_p7$F]gn$\"'@+;F_p7$F ahn$\"'[Q;F_p7$F[in$\"'X(o\"F_p7$F`in$\"'_Z<#F_p7$F[^o$\"'8/AF_p7$F`^o$\"' " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 8" }{TEXT 287 66 " .. The accuracy of another adaptive order 7-8 Runge-Kutta method " }}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this ex ample we construct a continuous numerical solution to the differential equation" }}{PARA 257 "" 0 "" {TEXT -1 1 " " }{XPPEDIT 18 0 "dy/dx=(l n(x+2)+5*cos(3*x))/y^3" "6#/*&%#dyG\"\"\"%#dxG!\"\"*&,&-%#lnG6#,&%\"xG F&\"\"#F&F&*&\"\"&F&-%$cosG6#*&\"\"$F&F/F&F&F&F&*$%\"yGF7F(" }{TEXT -1 2 ", " }}{PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial condit ion " }{XPPEDIT 18 0 "y(0) = 1;" "6#/-%\"yG6#\"\"!\"\"\"" }{TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "M aple can find an analytical solution although it has an awkward form w hich requires that an equation be solved for each evaluation." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 153 "de := diff(y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3;\nic := y(0)=1;\nd solve(\{de,ic\},y(x));\ng := unapply(rhs(%),x):\nplot(g(x),x=0..4,0..2 .2,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%% diffG6$-%\"yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3-%$cosG6 #,$*&\"\"$F3F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#i cG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#%\" xG,$*&#\"\"\"\"\"$F+*$),0\"#\")F+*(\"$C$F+-%#lnG6#,&F'F+\"\"#F+F+F'F+F +*&\"$['F+F3F+F+*&F2F+F'F+!\"\"*(\"%g@F+)-%$cosGF&F7F+-%$sinGF&F+F+*& \"$S&F+FAF+F;*&F9F+-F46#F7F+F;#F+\"\"%F+F+F+" }}{PARA 13 "" 1 "" {GLPLOT2D 615 199 199 {PLOTDATA 2 "6%-%'CURVESG6$7[p7$$\"\"!F)$\"\"\"F )7$$\"3emmm;arz@!#>$\"3fE]lbK/16!#<7$$\"39LLLL3VfVF/$\"3ME\"p7yR!)=\"F 27$$\"3s******\\i9RlF/$\"3m*R7`%=ab7F27$$\"3Hmmmm;')=()F/$\"3&R#Hs!fBJ J\"F27$$\"3-++]7z>^7!#=$\"3s]SbU=x'R\"F27$$\"3RLLLe'40j\"FE$\"3soez0UL l9F27$$\"3/++](Q&3d?FE$\"3o-LU<7EH:F27$$\"3mmmm;6m$[#FE$\"39&GJG2)G#e \"F27$$\"3fmmm;yYULFE$\"3=4*4M\\;Km\"F27$$\"3%HLL$eF>(>%FE$\"3K'*)\\FE$\"3tT*Q \"H(RXu\"F27$$\"3IKLLeZ*)*R&FE$\"3#>QGr.3@v\"F27$$\"3P*****\\Kd,\"eFE$ \"3AUZ#[)31bUV\"F27$$\"3)*******p=\\q6F2$\"3q$QXhSvcJ\"F27$$\"3@L Le9rR37F2$\"3I(y1]EC_D\"F27$$\"3mmm;fBIY7F2$\"3i='**[/`2>\"F27$$\"33++ Dh`P\"H\"F2$\"3:PLV'=a%46F27$$\"3GLLLj$[kL\"F2$\"3C-*owFa\\-\"F27$$\"3 MLLL36ju8F2$\"3vDIN_*>Da*FE7$$\"3?LLL`Q\"GT\"F2$\"3#4-#fpk<1*)FE7$$\"3 $***\\7e;-N9F2$\"3$p`BEN'=3')FE7$$\"3mmm\"HYHsX\"F2$\"3w!>P$pIH&R)FE7$ $\"3#**\\7`OL$o9F2$\"3YimGV@&)G$)FE7$$\"3=L$3xEP%z9F2$\"3u&[@'pn\\#H)F E7$$\"3kmT5q6a!\\\"F2$\"3%\\i<3ZQxG)FE7$$\"3!*****\\s]k,:F2$\"3oC7_(\\ 5]J)FE7$$\"3_mm\"HTg4a\"F2$\"377_S77f\\')FE7$$\"39LLL`dF!e\"F2$\"3SQP6 0Mfg#*FE7$$\"3^mm\"H\"4TB;F2$\"3PiQju)f!45F27$$\"33++]sgam;F2$\"3e*\\; qltt4\"F27$$\"3&******\\%4i2F2$\" 3+P\"o$e**pX:F27$$\"3)****\\([Wdb>F2$\"3W+iff3Y3;F27$$\"3immmTc-)*>F2$ \"3uo8V1B4n;F27$$\"3Mmm;f`@'3#F2$\"3!*zC`:&=ix\"F27$$\"3y****\\nZ)H;#F 2$\"3Q4;k.v)y&=F27$$\"3YmmmJy*eC#F2$\"3<0`iwzzK>F27$$\"3')******R^bJBF 2$\"3_s>h![ei*>F27$$\"3f*****\\5a`T#F2$\"37\\WYb'[^/#F27$$\"3o****\\7R V'\\#F2$\"3kG3Yr*z/3#F27$$\"3k*****\\@fke#F2$\"3*[W7[tgk5#F27$$\"3Nmm; %30pi#F2$\"3GLO=6iw8@F27$$\"3/LLL`4NnEF2$\"3G\\#eegh%=@F27$$\"3Emmm^b` 5FF2$\"3rz;vW7?@F27$$\"3)HL$e9= &Gz#F2$\"3Y'efKg>t6#F27$$\"3[mm;zM)>$GF2$\"3Nb`)f\"RV7@F27$$\"3$****** *pfaF27$$\"3xmmm')fdLLF2$\"3!GBB,iN8%>F27$$\"3bm mm,FT=MF2$\"3aJug0DD;>F27$$\"39++v8)z/Y$F2$\"3l'[\"HL/g2>F27$$\"3FLL$e #pa-NF2$\"3radEdF.->F27$$\"3emm\"HB-7a$F2$\"3Ob$Gb(o#***=F27$$\"3!**** ***Rv&)zNF2$\"32)>CwG(*3!>F27$$\"3#ommT)3;COF2$\"3%=6J(H'>f!>F27$$\"3I LLLGUYoOF2$\"3x[@O2*>^\">F27$$\"3\"*****\\n'*33PF2$\"3zzF27$$ \"3_mmm1^rZPF2$\"3gV\"e7I[9%>F27$$\"34++]sI@KQF2$\"3o)ft$o=_\")>F27$$ \"34++]2%)38RF2$\"33Vq\\d^XG?F27$$\"\"%F)$\"3Ud6vG/\\%3#F2-%'COLOURG6& %$RGBG$\"#5!\"\"F(F(-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F(F[dl;F($ \"#AFedl" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Cur ve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 106 "We start by constructing a discrete solution and make a numerical comparison with the analytical solution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 375 "de := diff(y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3;\nic \+ := y(0)=1;\npts := desolveRK(\{de,ic\},y(x),x=0..4,method=rk78b,output =points):\ncat(`The discrete solution has `,convert(nops(pts),string), ` points`);\np1 := plot(pts,style=line,color=grey):\np2 := plot([pts$2 ],style=point,symbol=[diamond,cross],color=[black,red]):\nplots[displa y]([p1,p2],view=[0..4,0..2.2],labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\" \"\"\"#F3F3*&\"\"&F3-%$cosG6#,$*&\"\"$F3F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%DThe~discrete~solution~has~50~pointsG" }}{PARA 13 " " 1 "" {GLPLOT2D 677 275 275 {PLOTDATA 2 "6'-%'CURVESG6%7T7$$\"\"!F)$ \"\"\"F)7$$\"3-+++++++5!#>$\"3/+++BSk_5!#<7$$\"39+++.tz]CF/$\"3-+++UfF <6F27$$\"3!******\\BH$oUF/$\"3%********zX\\=\"F27$$\"3U+++=90mlF/$\"33 +++cjIc7F27$$\"3_*****>TJAY*F/$\"3%*******og)4L\"F27$$\"3(******pL$)*4 8!#=$\"3-+++R#e#39F27$$\"31+++-INk \"F2$\"3)******pH6(z7F27$$\"31+++!>4DD\"F2$\"37+++jZ$)z6F27$$\"3!***** *\\e4EI\"F2$\"35+++5Wd)3\"F27$$\"35+++v#o%[8F2$\"3.+++I!yB+\"F27$$\"3) ******\\MeuQ\"F2$\"3_+++?*RmJ*FJ7$$\"3-+++]i0;9F2$\"3))*****H47%e))FJ7 $$\"34+++@)HJW\"F2$\"3J+++'Hm\">&)FJ7$$\"31+++IKLq9F2$\"3W+++uf-?$)FJ7 $$\"33+++:g&*)\\\"F2$\"3j*****4x&[0$)FJ7$$\"34+++S\\[a`:F2$\"3E+++#e\")>#))FJ7$$\"3)******HA+6e\"F2$ \"3s*****fPS`F*FJ7$$\"32+++7;Q5;F2$\"3F+++9CDI)*FJ7$$\"3)******>1JYk\" F2$\"3/+++a_J_5F27$$\"3))*****Rqd*)o\"F2$\"3(******z-UK9\"F27$$\"3'*** ***fhk![F2$\"35+++/`kb ;F27$$\"3/+++\\5()e@F2$\"3++++=f\"Q&=F27$$\"3>+++T.y@BF2$\"3%*******)> :(*)>F27$$\"3!)*****RDVa_#F2$\"3'******fiX.4#F27$$\"3/+++t]K@FF2$\"33+ ++S!*z?@F27$$\"3#*******Hf3+HF2$\"3-+++W!>$*4#F27$$\"39+++*[l;3$F2$\"3 y*****H_G8/#F27$$\"3)******fF:1B$F2$\"3)******>\"Gl!)>F27$$\"3A+++\")[ ]_LF2$\"3,+++pq*\\$>F27$$\"3;+++vkcxMF2$\"3#******R*e%\\!>F27$$\"3%*** ****RUr*f$F2$\"3&*******G%GE!>F27$$\"3,+++qzVVPF2$\"32+++HhsR>F27$$\"3 #)*****Hg%onQF2$\"3\"******fPq7+#F27$$\"35+++]xq#*RF2$\"3/+++F%e'z?F27 $$\"\"%F)$\"39+++H/\\%3#F2-%'COLOURG6&%$RGBG$\")=THv!\")Fb[lFb[l-%&STY LEG6#%%LINEG-F$6&F&-F_[l6&Fa[lF)F)F)-%'SYMBOLG6#%(DIAMONDG-Ff[l6#%&POI NTG-F$6&F&-F_[l6&Fa[l$\"*++++\"Fd[lF(F(-F^\\l6#%&CROSSGFa\\l-%+AXESLAB ELSG6%%\"xG%%y(x)G-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F(Fjz;F($\"#A!\"\"" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Cur ve 2" "Curve 3" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continuous solution can be constructed over the interva l from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 4 " to " } {XPPEDIT 18 0 "x = 4;" "6#/%\"xG\"\"%" }{TEXT -1 21 " using the proced ure " }{TEXT 0 9 "desolveRK" }{TEXT -1 20 " with the options ''" } {TEXT 262 12 "method=rk78b" }{TEXT -1 9 "'' and ''" }{TEXT 262 15 "out put=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 253 "de := diff(y(x),x)=(ln(x+2) +5*cos(3*x))/y(x)^3;\nic := y(0)=1;\ngn1 := desolveRK(\{de,ic\},y(x),x =0..4,method=rk78b,output=rkinterp);\nplot('gn1'(x),x=0..4,0..2.2,labe ls=[`x`,`y(x)`],\n color=COLOR(RGB,.6,.05,0),thickness=2 ,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%di ffG6$-%\"yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3-%$cosG6#, $*&\"\"$F3F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG /-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {TEXT -1 0 "" }{GLPLOT2D 470 275 275 {PLOTDATA 2 "6'-%'CURVESG6#7[p7$$\"\"!F)$\"\"\"F)7$$\"+;arz@!# 6$\"+cK/16!\"*7$$\"+L3VfVF/$\"+\"yR!)=\"F27$$\"+]i9RlF/$\"+X=ab7F27$$ \"+m;')=()F/$\"+\"fBJJ\"F27$$\"+7z>^7!#5$\"+U=x'R\"F27$$\"+e'40j\"FE$ \"+1ULl9F27$$\"+)Q&3d?FE$\"+<7EH:F27$$\"+<6m$[#FE$\"+t!)G#e\"F27$$\"+< yYULFE$\"+$\\;Km\"F27$$\"+eF>(>%FE$\"+53;;K'*)\\FE$\"+H(RXu\"F27$$\"+gZ*)*R&FE$\"+P!3@v\"F27$$\"+Dt:5e FE$\"+&)31bUV\"F27$$\"+q=\\q6F2$\"+1an:8F27$$\"+9rR37F2$\"+mUAb7F27$$\"+fBI Y7F2$\"+XIv!>\"F27$$\"+h`P\"H\"F2$\"+(=a%46F27$$\"+j$[kL\"F2$\"+yU&\\- \"F27$$\"+36ju8F2$\"+e*>Da*FE7$$\"+`Q\"GT\"F2$\"+vk<1*)FE7$$\"+e;-N9F2 $\"+aj=3')FE7$$\"+i%HsX\"F2$\"+wIH&R)FE7$$\"+kLLo9F2$\"+]@&)G$)FE7$$\" +nsVz9F2$\"+rn\\#H)FE7$$\"+q6a!\\\"F2$\"+r%QxG)FE7$$\"+s]k,:F2$\"+'\\5 ]J)FE7$$\"+7/'4a\"F2$\"+,7f\\')FE7$$\"+`dF!e\"F2$\"+*R$fg#*FE7$$\"+74T B;F2$\"+t)f!45F27$$\"+sgam;F2$\"+cOP(4\"F27$$\"+W4i2F2$\"+f**pX:F27$$\"+\\Wdb>F2 $\"+g3Y3;F27$$\"+Uc-)*>F2$\"+2B4n;F27$$\"+f`@'3#F2$\"+:&=ix\"F27$$\"+n Z)H;#F2$\"+.v)y&=F27$$\"+Ky*eC#F2$\"+xzzK>F27$$\"+S^bJBF2$\"+\"[ei*>F2 7$$\"+0TN:CF2$\"+b'[^/#F27$$\"+7RV'\\#F2$\"+r*z/3#F27$$\"+:#fke#F2$\"+ N2Y1@F27$$\"+%30pi#F2$\"+6iw8@F27$$\"+`4NnEF2$\"+1;Y=@F27$$\"+_b`5FF2$ \"+=Do?@F27$$\"+],s`FF2$\"+?W7?@F27$$\"+9=&Gz#F2$\"+.'>t6#F27$$\"+zM)> $GF2$\"+;RV7@F27$$\"+qfaF27$$\"+()fdLLF2$\"+?cLT>F27$$\"+-FT=MF2$\"+1DD;>F27$$\"+9)z/Y$F2$\"+ L/g2>F27$$\"+Epa-NF2$\"+dF.->F27$$\"+LA?TNF2$\"+wo#***=F27$$\"+Sv&)zNF 2$\"+)G(*3!>F27$$\"+%)3;COF2$\"+I'>f!>F27$$\"+GUYoOF2$\"+2*>^\">F27$$ \"+o'*33PF2$\"+#)4xE>F27$$\"+2^rZPF2$\"+,$[9%>F27$$\"+sI@KQF2$\"+o=_\" )>F27$$\"+2%)38RF2$\"+d^XG?F27$$\"\"%F)$\"+H/\\%3#F2-%&COLORG6&%$RGBG$ \"\"'!\"\"$\"\"&!\"#F(-%*THICKNESSG6#\"\"#-%+AXESLABELSG6$%\"xG%%y(x)G -%%VIEWG6$;F(F[dl;F($\"#AFedl" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 139 "The first error graph is plotted using s tandard 10 digit arithmetic for the evaluation of the procedure which \+ gives the numerical solution." }}{PARA 0 "" 0 "" {TEXT -1 63 "The erro r is greatest where the derivative is changing rapidly." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "plot('g n1'(x)-g(x),x=0..4,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7c_n7$$\"\"!F)$\"\"\"!#57$$\"+qUkCF!#7F (7$$\"+S&)G\\aF0F(7$$\"+5G$R<)F0F(7$$\"+3x&)*3\"!#6F(7$$\"+N@Ki8F:F(7$ $\"+ilyM;F:$!\"\"!\"*7$$\"+*)4D2>F:F(7$$\"+;arz@F:F(7$$\"+V)z@X#F:F(7$ $F/F:F(7$$\"+(p3r*HF:F(7$$\"+CJdpKF:$F+FC7$$\"+^v.UNF:F(7$$\"+y>]9QF:F A7$$\"+1k'p3%F:F(7$$\"+L3VfVF:F(7$$\"+]i9RlF:F(7$$\"+m;')=()F:F(7$$\"+ 7z>^7F,F(7$$\"+e'40j\"F,F(7$$\"+BvzV=F,F(7$$\"+)Q&3d?F,F(7$$\"+atS5@F, F(7$$\"+?$HP;#F,F(7$$\"+..R!>#F,F(7$$\"+'G^q@#F,FU7$$\"+pArVAF,F(7$$\" +_KPqAF,FU7$$\"+NU.(H#F,FA7$$\"+=_pBBF,F(7$$\"+,iN]BF,F(7$$\"+%=,\"f#F,F(7$$\"+k' \\yh#F,F(7$$\"+ttoWEF,F(7$$\"+#3D:n#F,F(7$$\"+#zi$)p#F,FU7$$\"+-0?DFF, F(7$$\"+6#Q?v#F,FU7$$\"+?f()yFF,F(7$$\"+IOr0GF,F(7$$\"+R8bKGF,FA7$$\"+ [!*QfGF,FA7$$\"+enA')GF,F(7$$\"+nW18HF,F(7$$\"+UhwFJF,F(7$$\"+(>%F,FU7$$\"+!\\c>A%F,F(7$$\"+A-sYUF,F U7$$\"+aR[rUF,F(7$$\"+(oZiH%F,FA7$$\"+?9,@VF,F(7$$\"+_^xXVF,F(7$$\"+%) )Q0P%F,F(7$$\"+;EI&R%F,F(7$$\"+XvN%\\%F,F(7$$\"+uCT$f%F,F(7$$\"+Q*RHk% F,F(7$$\"+.uY#p%F,F(7$$\"+O6Bu%F,F(7$$\"++'enw%F,F(7$$ \"+KB_\"z%F,FU7$$\"+kgG;[F,FU7$$\"+(z\\5%[F,F(7$$\"+IN\"e'[F,F(7$$\"+i sd!*[F,F(7$$\"+EZ5S\\F,F(7$$\"+\">K'*)\\F,F(7$$\"+vMw%>&F,F(7$$\"+gZ*) *R&F,F(7$$\"++/Y-bF,F(7$$\"+Sg-0cF,F(7$$\"+]umIcF,F(7$$\"+g)3jl&F,FU7$ $\"+q-&>o&F,FU7$$\"+!o\"f2dF,F(7$$\"+!4LKt&F,F(7$$\"++X()edF,FU7$$\"+5 f^%y&F,F(7$$\"+Dt:5eF,FU7$$\"+5dnOeF,F(7$$\"+!4%>jeF,F(7$$\"+vCr*)eF,F (7$$\"+g3B;fF,F(7$$\"+S#\\F%fF,FU7$$\"+DwEpfF,FU7$$\"+5gy&*fF,F(7$$\"+ !R/B-'F,FU7$$\"+vF#)[gF,F(7$$\"+g6MvgF,F(7$$\"+S&f=5'F,F(7$$\"+DzPGhF, FU7$$\"+5j*[:'F,F(7$$\"+!p99='F,F(7$$\"+vI$z?'F,F(7$$\"+g9XMiF,F(7$$\" +D&)fYkF,F(7$$\"+\"fX(emF,F(7$$\"+5!z;3(F,F(7$$\"+DCh/vF,F(7$$\"+L/pu$ )F,F(7$$\"+DI(yv)F,F(7$$\"+;c0T\"*F,F(7$$\"+Ds(\\>*F,F(7$$\"+I))*)[#*F ,F(7$$\"+I'feF*F,F(7$$\"+N/#GI*F,F(7$$\"+S7yH$*F,F(7$$\"+S?uc$*F,FU7$$ \"+SGq$Q*F,F(7$$\"+XOm5%*F,F(7$$\"+]WiP%*F,FU7$$\"+]_ek%*F,F(7$$\"+bo] =&*F,F(7$$\"+g%GCd*F,F(7$$\"+g#*Q*f*F,F(7$$\"+l+NE'*F,F(7$$\"+q3J`'*F, F(7$$\"+q;F!o*F,FA7$$\"+qCB2(*F,F(7$$\"+vK>M(*F,FU7$$\"+!3a6w*F,FA7$$ \"+!)[6)y*F,F(7$$\"+&[O?%)*F,F(7$$\"+!4ef*)*F,F(7$$\"+!*)=H#**F,F(7$$ \"+&pz)\\**F,F(7$$\"++0%o(**F,FU7$$\"+I,Q+5FCFA7$$\"+!G(3.5FCF(7$$\"+J Wz05FCF(7$$\"+#e,&35FCF(7$$\"+K(37,\"FCFU7$$\"+$)e\"R,\"FCFU7$$\"+MIi; 5FCF(7$$\"+%=I$>5FCF(7$$\"+Nt.A5FCF(7$$\"+O;XF5FCF(7$$\"+Qf'G.\"FCF(7$ $\"+)3tb.\"FCF(7$$\"+R-GQ5FCF(7$$\"+!R()4/\"FCF(7$$\"+SXpV5FCFA7$$\"+! p,k/\"FCF(7$$\"+T)3\"\\5FCF(7$$\"+#*f\"=0\"FCF(7$$\"+UJ_a5FCFU7$$\"+$H Is0\"FCFA7$$\"+Wu$*f5FCFU7$$\"+%fWE1\"FCF(7$$\"+XF,7$$\"+Aa3l8FC$!\")F,7$$\"+W=Zn8FC$!\"% F,7$$\"+l#e)p8FC$!\"(F,7$$\"+'oWAP\"FC$!#OF,7$$\"+36ju8FC$\"\"'F,7$$\" +Iv,x8FC$\"#=F,7$$\"+^RSz8FC$F:F,7$$\"+s.z\"Q\"FC$\"\"%F,7$$\"+%zwTQ\" FC$\"#9F,7$$\"+;Kc'Q\"FC$\"\"&F,7$$\"+P'\\*)Q\"FC$!#=F,7$$\"+egL\"R\"F CF^gm7$$\"+![APR\"FC$!#?F,7$$\"+-*3hR\"FC$!#UF,7$$\"+B`\\)R\"FCFjem7$$ \"+W<)3S\"FC$\"#XF,7$$\"+m\"oKS\"FC$\"#HF,7$$\"+)eacS\"FC$\"#8F,7$$\"+ 55/39FC$\"\")F,7$$\"+KuU59FCFeim7$$\"+`Q\"GT\"FC$!#FF,7$$\"+G)*e:9FC$ \"\"#F,7$$\"+/eO=9FC$!#DF,7$$\"+!yT6U\"FC$!#NF,7$$\"+cx\"RU\"FC$\"#OF, 7$$\"+KPpE9FCF_fm7$$\"+2(p%H9FCF`]n7$$\"+#oXAV\"FC$!#MF,7$$\"+e;-N9FCF `]n7$$\"+MwzP9FC$!#AF,7$$\"+4OdS9FCF_[n7$$\"+%e\\LW\"FCFe^n7$$\"+gb7Y9 FC$\"\"(F,7$$\"+O:!*[9FC$!#>F,7$$\"+6vn^9FC$\"#FF,7$$\"+'[`WX\"FC$\"#6 F,7$$\"+i%HsX\"FCFb`n7$$\"+Qa+g9FCF^gm7$$\"+89yi9FCFifm7$$\"+)QdbY\"FC $\"#RF,7$$\"+kLLo9FC$\"#ZF,7$$\"+S$46Z\"FCF]hm7$$\"+;`)QZ\"FCFifm7$$\" +#HhmZ\"FC$\"#kF,7$$\"+nsVz9FC$\"#sF,7$$\"+UK@#[\"FC$!#HF,7$$\"+=#*)\\ [\"FC$\"#hF,7$$\"+%>lx[\"FC$!#KF,7$$\"+q6a!\\\"FC$\"#_F,7$$\"+YrJ$\\\" FC$\"#QF,7$$\"+@J4'\\\"FCFicn7$$\"+'4p))\\\"FC$\"\"*F,7$$\"+s]k,:FC$!# 8F,7$$\"+\"G-T]\"FCF^gm7$$\"+!\\fl]\"FC$\"#VF,7$$\"+)p;!4:FC$\"#;F,7$$ \"+2RZ6:FC$!#!=;FC$\"#AF,7$$\"+k \\r?;FCFU7$$\"+74TB;FCFA7$$\"+go5E;FC$F\\imFC7$$\"+2G!)G;FC$F_gmFC7$$ \"+a()\\J;FC$F\\]nFC7$$\"+-Z>M;FCF(7$$\"+]1*oj\"FCFA7$$\"+(f'eR;FC$!\" #FC7$$\"+WDGU;FCFA7$$\"+#\\y\\k\"FCFcao7$$\"+SWnZ;FCFU7$$\"+(Qq.l\"FCF (7$$\"+Mj1`;FCF(7$$\"+#Gidl\"FCF(7$$\"+I#e%e;FCFA7$$\"+xT:h;FCFabo7$$ \"+C,&Qm\"FCFA7$$\"+sgam;FCFA7$$\"+_K6p;FCFddm7$$\"+J/or;FCFgao7$$\"+5 wCu;FCFU7$$\"+!z9on\"FCF(7$$\"+q>Qz;FCF(7$$\"+\\\"\\>o\"FCFA7$$\"+Gj^% o\"FCF(7$$\"+3N3(o\"FCFU7$$\"+)o]'*o\"FCFgao7$$\"+ny@#p\"FCFgao7$$\"+Y ]y%p\"FCF(7$$\"+EAN(p\"FCFA7$$\"+1%>**p\"FCFU7$$\"+&e'[-FCFA7$$\"+cTG.>FCFU7$$\"+1P?3>FCFU7$$\"+cK78>FCFU7$$\"+ckx:>FCFU7$$\" +b'H%=>FCF(7$$\"+aG3@>FCF(7$$\"+agtB>FCFgao7$$\"+a#*QE>FCFA7$$\"+`C/H> FCF(7$$\"+_cpJ>FCF(7$$\"+_)[V$>FCF(7$$\"+_?+P>FCF(7$$\"+^_lR>FCFA7$$\" +]%3B%>FCF(7$$\"+];'\\%>FCF(7$$\"+][hZ>FCF(7$$\"+]!o-&>FCFU7$$\"+]7#H& >FCF(7$$\"+\\Wdb>FCFU7$$\"+[wAe>FCF(7$$\"+[3)3'>FCFA7$$\"+[S`j>FCF(7$$ \"+[s=m>FCFU7$$\"+[/%)o>FCF(7$$\"+ZO\\r>FCF(7$$\"+Yo9u>FCFA7$$\"+Y+!o( >FCFA7$$\"+YKXz>FCF(7$$\"+Xk5#)>FCF(7$$\"+W'fZ)>FCFU7$$\"+WGT()>FCF(7$ $\"+Wg1!*>FCFU7$$\"+V#>F*>FCFU7$$\"+UCP&*>FCF(7$$\"+Uc-)*>FCF(7$$\"+rI 2??FCF(7$$\"++07U?FCF(7$$\"+Hk([/#FCF(7$$\"+eBjZ?FCFU7$$\"+'G)Q]?FCF(7 $$\"+:U9`?FCFU7$$\"+W,!f0#FCF(7$$\"+sgle?FCF(7$$\"+,?Th?FCF(7$$\"+Iz;k ?FCF(7$$\"+eQ#p1#FCF(7$$\"+(yz'p?FCFU7$$\"+;dVs?FCFU7$$\"+W;>v?FCFU7$$ \"+tv%z2#FCFU7$$\"+-Nq!3#FCF(7$$\"+I%fM3#FCF(7$$\"+f`@'3#FCFA7$$\"+6xS 0@FCFA7$$\"+j+gC@FCFA7$$\"+2\"**p7#FCFU7$$\"+^\")RH@FCF(7$$\"+&>(zJ@FC FU7$$\"+Ri>M@FCF(7$$\"+FV**Q@FCF(7$$\"+:CzV@FCF(7$$\"+\"f)Q`@FCF(7$$\" +nZ)H;#FCF(7$$\"+MIr$=#FCF(7$$\"++8W/AFCF(7$$\"+LB.2AFCF(7$$\"+mLi4AFC F(7$$\"++W@7AFCFU7$$\"+La![@#FCFA7$$\"+mkRAFCF(7$$\"+ L&yDA#FCFU7$$\"+m&p^A#FCF(7$$\"+*fgxA#FCF(7$$\"+K;NIAFCFU7$$\"+mE%HB#F CFU7$$\"+*pLbB#FCF(7$$\"+KZ7QAFCF(7$$\"+mdrSAFCF(7$$\"+*z1LC#FCF(7$$\" +Ky*eC#FCFU7$$\"+'[E()G#FCFU7$$\"+S^bJBFCFU7$$\"+eQ!yDFCF(7$$\"+ME$3e#FCF(7$$\"+ Cfk$e#FCF(7$$\"+:#fke#FCFU7$$\"+#3()*)e#FCFU7$$\"+[\\^\"f#FCF(7$$\"+:G /%f#FCF(7$$\"+#oqlf#FCF(7$$\"+;ki,EFCF(7$$\"+]@o1EFCF(7$$\"+(*4GFCF(7$$\"+YwT7GFCFU7$$\"+ vL'[\"GFCFU7$$\"+/\"4t\"GFCF(7$$\"+L[v>GFCFU7$$\"+i0?AGFCF(7$$\"+\"HYY #GFCF(7$$\"+??4FGFCFU7$$\"+]x`HGFCFU7$$\"+zM)>$GFCF(7$$\"+CZwuGFCF(7$$ \"+qfaIFCF(7$$\"+G=s@IF CF(7$$\"+I;NCIFCFU7$$\"+K9)p-$FCFA7$$\"+M7hHIFCF(7$$\"+O5CKIFCFU7$$\"+ R3([.$FCF(7$$\"+U1]PIFCF(7$$\"+W/8SIFCFU7$$\"+Y-wUIFCF(7$$\"+\\+RXIFCF (7$$\"+_)>![IFCF(7$$\"+a'\\10$FCF(7$$\"+c%zK0$FCF(7$$\"+e#4f0$FCFU7$$ \"+g!R&eIFCF(7$$\"+j)o61$FCFU7$$\"+m')zjIFCFU7$$\"+o%Gk1$FCF(7$$\"+q#e !pIFCF(7$$\"+s!)orIFCFU7$$\"+uyJuIFCFU7$$\"+xw%p2$FCF(7$$\"+![x&zIFCFU 7$$\"+#G2A3$FCF(7$$\"+2&\\t3$FCF(7$$\"+K<\\#4$FCF(7$$\"+WG1&4$FCF(7$$ \"+dRj(4$FCFU7$$\"+q]?+JFCF(7$$\"+#=wF5$FCFU7$$\"+%HZ`5$FCFU7$$\"+2%=z 5$FCF(7$$\"+?&*[5JFCFU7$$\"+K118JFCFU7$$\"+WaJFCF(7$$\"+X&pn:$FCF U7$$\"+e1MfJFCF(7$$\"+q<\">;$FCF(7$$\"+$)G[kJFCFU7$$\"+;m,'=$FCFU7$$\" +[.b2KFCFU7$$\"+k?C5KFCF(7$$\"+\"yLH@$FCF(7$$\"+)\\Dc@$FCFU7$$\"+9sJ=K FCFU7$$\"+I*35A$FCF(7$$\"+Z1qBKFCFU7$$\"+kBREKFCFU7$$\"+!3%3HKFCF(7$$ \"+'zvR $FCFU7$$\"+wBb%R$FCFU7$$\"+BN?(R$FCF(7$$\"+qY&)*R$FCFU7$$\"+=e]-MFCFU7 $$\"+lp:0MFCFU7$$\"+7\"3yS$FCF(7$$\"+g#f/T$FCF(7$$\"+2/68MFCF(7$$\"+a: w:MFCFU7$$\"+-FT=MFCFU7$$\"+'*=/@MFCF(7$$\"+\"4rOU$FCF(7$$\"+'G+jU$FCF (7$$\"+![H*GMFCFU7$$\"+u'e:V$FCF(7$$\"+py=MMFCF(7$$\"+kq\"oV$FCF(7$$\" +eiWRMFCF(7$$\"+_a2UMFCF(7$$\"+ZYqWMFCFU7$$\"+UQLZMFCFU7$$\"+OI'*\\MFC FU7$$\"+IAf_MFCF(7$$\"+D9AbMFCF(7$$\"+?1&yX$FCF(7$$\"+9)z/Y$FCFU7$$\"+ 3!4JY$FCF(7$$\"+.#QdY$FCF(7$$\"+)Rn$oMFCF(7$$\"+#f'*4Z$FCFU7$$\"+'yDOZ $FCFU7$$\"+\")\\DwMFCF(7$$\"+wT))yMFCF(7$$\"+qL^\"[$FCF(7$$\"+kD9%[$FC F(7$$\"+f =Oa$FCFU7$$\"+YT.YNFCF(7$$\"+.,X[NFCF(7$$\"+gg'3b$FCFU7$$\"+;?G`NFCFU7 $$\"+tzpbNFCF(7$$\"+IR6eNFCFU7$$\"+'))H0c$FCF(7$$\"+Ve%Hc$FCF(7$$\"++= OlNFCF(7$$\"+cxxnNFCF(7$$\"+8P>qNFCFU7$$\"+q'4Ed$FCF(7$$\"+Ec-vNFCF(7$ $\"+$eTud$FCF(7$$\"+Sv&)zNFCFU7$$\"+*\\EEe$FCFU7$$\"+eaR&e$FCFA7$$\"+< W;)e$FCF(7$$\"+wL$4f$FCF(7$$\"+NBq$f$FCF(7$$\"+%Hrkf$FCF(7$$\"+`-C*f$F CFU7$$\"+7#4?g$FCFU7$$\"+Ira2OFCFU7$$\"+[]38OFCFU7$$\"+2S&eh$FCF(7$$\" +mHi=OFCF(7$$\"+D>R@OFCF(7$$\"+%)3;COFCF(7$$\"+V)Hpi$FCFU7$$\"+-))pHOF CFU7$$\"+hxYKOFCFA7$$\"+?nBNOFCFU7$$\"+QYxSOFCFU7$$\"+cDJYOFCFU7$$\"+: :3\\OFCFU7$$\"+u/&=l$FCF(7$$\"+L%>Yl$FCF(7$$\"+#R)QdOFCF(7$$\"+5j#Hm$F CF(7$$\"+GUYoOFCF(7$$\"+=3%4n$FCFU7$$\"+3uTtOFCF(7$$\"+)*R*en$FCFU7$$ \"+)eq$yOFCFU7$$\"+yr%3o$FCF(7$$\"+oPK$o$FCF(7$$\"+e.!eo$FCFU7$$\"+[pF )o$FCFU7$$\"+QNv!p$FCFU7$$\"+G,B$p$FCF(7$$\"+=nq&p$FCF(7$$\"+3L=)p$FCF U7$$\"+)*)f1q$FCF(7$$\"+)[OJq$FCFA7$$\"+yIh0PFCFU7$$\"+o'*33PFCFA7$$\" +eic5PFCFU7$$\"+[G/8PFCFU7$$\"+Q%>br$FCF(7$$\"+Gg*zr$FCF(7$$\"+=EZ?PFC F(7$$\"+3#\\Hs$FCF(7$$\"+)zDas$FCF(7$$\"+)Q-zs$FCFU7$$\"+y*y.t$FCF(7$$ \"+ob&Gt$FCF(7$$\"+e@LNPFCF(7$$\"+[(3yt$FCF(7$$\"+G>wUPFCF(7$$\"+2^rZP FCF(7$$\"+sI@KQFCF(7$$\"+S2lsQFCF(7$$\"+2%)38RFCF(7$$\"+1j\"[$RFCF(7$$ \"+/UacRFCF(7$$\"+yh(>'RFCF(7$$\"+`\"3u'RFCF(7$$\"+ST7qRFCFU7$$\"+G,%G (RFCF(7$$\"+:hbvRFCFU7$$\"+-@FyRFCFU7$$\"+*3))4)RFCFU7$$\"+wSq$)RFCF(7 $$\"+k+U')RFCFU7$$\"+^g8*)RFCF(7$$\"+Q?&=*RFCFU7$$\"+E!oX*RFCFU7$$\"+8 SG(*RFCFU7$$F\\imF)FU-%'COLOURG6&%$RGBGF(F($\"*++++\"Fjfm-%+AXESLABELS G6$Q\"x6\"Q!F`bu-%%VIEWG6$;F(Feau%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 136 "The solution has been construc ted in such a way that up to a point it will produce more accurate val ues when a higher precision is used." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "evalf[15](plot('gn1'(x)-g( x),x=0..4,color=blue,numpoints=100));" }}{PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7jjm7$$\"\"!F)$\"\"\"!#:7$$\"0I HHHz?k#!#<$!\"&!#97$$\"0geeeeTG&F0$\"\"$F37$$\"0DBBB)>0mF0$\"#6F37$$\" 0!zyyyBEzF0$!$G\"F37$$\"0b___xsC*F0$!$$QF37$$\"0srrrJo0\"!#;$\"#HF37$$ \"0===oN*)=\"FK$\"#YF37$$\"0lkkkR5K\"FK$FKF37$$\"0766hVJX\"FK$!#=F37$$ \"0edddZ_e\"FKF17$$\"0///a^tr\"FK$\"#EF37$$\"0^]]]b%\\=FK$\"$D\"F37$$ \"0)ppp%f:)>FK$\"$'>F37$$\"0WVVVjO6#FK$\"\"(F37$$\"0!**)*)RndC#FK$!$P% F37$$\"0POOOryP#FK$!$J'F37$$\"0%GGG`(*4DFK$!\"(F37$$F/FK$\"#IF37$$\"0w vvD$=uFFK$!#>F37$$\"0BAAA(G1HFK$!#[F37$$\"0qoo=\"RQIFK$!#UF37$$\"0;::: &\\qJFK$!#JF37$$\"04333.ZV$FK$\"#SF37$$\"0-,,,6*)p$FK$\"$`\"F37$$\"0[Z Z(\\,JQFKF(7$$\"0%RRR*=J'RFK$!$Q$F37$$\"0SSS!HA&4%FKFep7$$\"0(ooooKFUF K$!$k'F37$$\"0qp>#)pAM%FK$!#FF37$$\"0___x7sX%FK$\"#8F37$$\"0NN&Gd:sXFK $!\"#F37$$\"0===o)4(o%FK$!#TF37$$\"0,,^jT?![FK$!#mF37$$\"0%QQ)e%)p\"\\ FK$!#pF37$$\"0lm;aF>.&FK$!#hF37$$\"0]\\\\\\qo9&FK$!#`F37$$\"0:::ScnP&F K$!#EF37$$\"0!333Bk1cFK$\"#wF37$$\"0gj8E&e@dFK$\"$M\"F37$$\"0XYY@Gl$eF K$\"$Z\"F37$$\"0IHz;r9&fFK$\"#qF37$$\"057779k1'FK$!$;\"F37$$\"0!\\\\uq N\"='FK$!$w$F37$$\"0vxx-+jH'FK$!$:'F37$$\"0gg5)HC6kFK$!$B(F37$$\"0SVV$ f=ElFK$!$=(F37$$\"0DEw))G6k'FK$!#_F37$$\"0544%=2cnFK$!#5F37$$\"0!>>%z9 5(oFKF17$$\"0vuuudf)pFK$!#HF37$$\"0gd2q+45(FK$!#gF37$$\"0SSSlVe@(FK$!# \")F37$$\"0?Btg'yItFK$!#))F37$$\"0011cHdW(FK$!#%)F37$$\"0qrrY:cn(FK$!# rF37$$\"0PPPP,b!zFKFdv7$$\"0&oo=@.k\")FK$\"#@F37$$\"0NOO'GcA%)FK$\"$H \"F37$$\"0&ee3O4\"o)FK$\"#gF37$$\"0NNNNC'R*)FK$!$M$F37$$\"0&[[)4b\")>* FK$!$N(F37$$\"0NMM%eoc%*FK$!$$zF37$$\"054f@^fe*FK$!#dF37$$\"0&QQ)e;_r* FK$!#BF37$$\"0ge3'>[W)*FKFcq7$$\"0NLLLZP(**FK$!#SF37$$\"0GGy!yAB5F,$!# #*F37$$\"0BBB)33\\5F,$!$-\"F37$$\"0==o&R$\\2\"F,$!#!*F37$$\"0888.(y+6F ,$!#zF37$$\"0...=$\\_6F,$\"#FF37$$\"0$HHH$*>/7F,$\"#))F37$$\"0[ZZxB-B \"F,$!$_\"F37$$\"0---A[iD\"F,$!$U&F37$$\"0dccmsAG\"F,$!$#zF37$$\"07666 (H38F,$!$B)F37$$\"0RQQL48K\"F,$!##)F37$$\"0mllb@VL\"F,Fhq7$$\"0%HHzPLZ 8F,Fbr7$$\"0@??+Y.O\"F,$!#MF37$$\"0wuuWqjQ\"F,$!#vF37$$\"0IHH*[R79F,$! $3\"F37$$\"0RQQyVWY\"F,$!$.\"F37$$\"0[ZZn#\\;:F,F\\\\l7$$\"0dcccT&o:F, Fft7$$\"0mllX!f?;F,$\"#'*F37$$\"0utB@\"\\Y;F,F`z7$$\"0#==o>Rs;F,$!$c#F 37$$\"0!**)Rs#H)p\"F,$!$p&F37$$\"0)zzzM>CF,Fbx7$$\"0iii_*RJ>F,$!$9\"F37$$\"0yyy.,K)>F,F^`l7$$\"0& \\\\\\D+N?F,Fb[l7$$\"0====HI3#F,$!\")F37$$\"0UTT\"e0J@F,$\"#sF37$$\"0l kkW#3z@F,$!#CF37$$\"0)yyy!4rA#F,$!$%RF37$$\"0666rN^F#F,$!$h(F37$$\"0MM MMiJK#F,$!$K)F37$$\"0:::+p^L#F,F^`l7$$\"0'fffc>H-_R#F,$!#ZF37$$\"0\"333c@>CF,$ !#fF37$$\"0ggg+!3WCF,F[cl7$$\"0SSSSW*oCF,$!$,\"F37$$\"0???!)3Q\\#F,$!$ 7\"F37$$\"0+++?t'=DF,$!$8\"F37$$\"0gff*>SoDF,$!$0\"F37$$\"0?>>zI\"=EF, $!#**F37$$\"0RQQQ)eHF,$!$[&F37$$\"0cbb&*>c%HF,$!$#oF37$$\"0:::vM8(HF,$! $\\(F37$$\"0%\\\\\\@>%)HF,$!$e(F37$$\"0uuua\\q*HF,$!$i(F37$$\"0aaa%p!* 4IF,$!$!yF37$$\"0MMMMkF-$F,$!#)*F37$$\"0%RRR\"z%[IF,$!#xF37$$\"0```$R> uIF,$!#aF37$$\"0788t3**4$F,Fhq7$$\"0sss_Bc7$F,Fj\\m7$$\"0#>>>J0xJF,F\\ \\l7$$\"0666r#[GKF,$!$+\"F37$$\"0UUU-75L$F,Ffgl7$$\"0uttLTNV$F,$!#wF37 $$\"0SRR*f![[$F,Fd_l7$$\"0000lqg`$F,$\"\"#F37$$\"0)yyyHqhNF,$\"#7F37$$ \"0qqqINte$F,Fh_m7$$\"0```jnHh$F,F[[m7$$\"0OOO'**fQOF,F[cl7$$\"0YYY'R1 WPF,$!$>&F37$$\"0ccc'z_\\QF,$!$(pF37$$\"0#Gyl4riQF,F[cl7$$\"034f'R*e(Q F,F[dl7$$\"0MNg'p2*)QF,$!#lF37$$\"0hhh'*fA!RF,Fg^l7$$\"099k'fiGRF,Ffhl 7$$\"0mmm'>*\\&RF,Fd_l7$$\"0srr'Rs2SF,F[z7$$\"0xww'fXgSF,Fju7$$\"0srrr [L:%F,Febm7$$\"0nmmYTiC%F,F[dl7$$\"0999%yo#H%F,$!#tF37$$\"0ihh@M\"RVF, $!#nF37$$\"0544f!e&Q%F,F[z7$$\"0dcc'p-KWF,Fhz7$$\"0WVVVx6k%F,$!$y\"F37 $$\"0III!zK][F,$!$H&F37$$\"0===[`M'[F,Fj\\m7$$\"01111zl([F,F[z7$$\"0%R RRYq*)[F,$!#XF37$$\"0\"===-$G!\\F,$!#QF37$$\"0cddP\"3H\\F,$!#GF37$$\"0 KLL`K`&\\F,$!#?F37$$\"0&[[[[$y+&F,Fcq7$$\"0NOO;P.1&F,F_[n7$$\"0SRRzT`; &F,Fd_l7$$\"0UUUUY.F&F,Fd_l7$$\"0DCC%y`r`F,F`u7$$\"0011EHFZ&F,Fat7$$\" 0+(pp\\KBbF,$!#8F37$$\"0!zyy1#Rd&F,Fhdm7$$\"0!)yyQ;Xi&F,F<7$$\"0qpp47^ n&F,$F+F37$$\"0!**)*)f.qw&F,Fb[l7$$\"05555&*)eeF,$!$6#F37$$\"0::l(z'=) eF,$!$P#F37$$\"0???&3%[!fF,$!$a#F37$$\"0DDvs8y#fF,$!$g#F37$$\"0IIIg'y] fF,$!$e#F37$$\"0SSSNKn*fF,$!$T#F37$$\"0]]]5yE/'F,F[]n7$$\"0qpp/7t4'F,F [p7$$\"0!*)))))f%>:'F,$\"#CF37$$\"0533$*zl?'F,FL7$$\"0DFF(Q@hiF,$\"#GF 37$$\"0lllv\"[qjF,$\"#?F37$$\"0///k\\(zkF,$\"#>F37$$\"0022(QJslF,F^an7 $$\"05555y[m'F,$\"#BF37$$\"0:88LUuv'F,$\"#QF37$$\"0;;;c1+&oF,$\"#kF37$ $\"0:<<(\\NlqF,Febn7$$\"0===Q.2G(F,$\"#iF37$$\"0STT@B8Z(F,$\"$B\"F37$$ \"0lkk/V>m(F,$\"$_\"F37$$\"0!QQ)3GUr(F,$\"$R\"F37$$\"0+..88lw(F,$\"$J \"F37$$\"0?AA<)z=yF,F^]l7$$\"0STT@$3ryF,$\"$K\"F37$$\"0!)zzH`c(zF,$\"$ [\"F37$$\"0===QB-3)F,$\"$w\"F37$$\"0!zyyUPz#)F,$\"$S$F37$$\"0ddd>>\"\\dF*F,$\"$V#F37$$\"0???5h'y$*F,$\"$y#F37$$\"0][[3t:[*F,$\"$b$F37 $$\"0!onn][%e*F,$\"$3&F37$$\"00000(R(o*F,$\"$G*F37$$\"0STTOX3u*F,$\"%p 7F37$$\"0!yxxOH%z*F,$\"%W;F37$$\"0:99*>uZ)*F,$\"%k>F37$$\"0]]]I!>,**F, $\"%B@F37$$\"0&oo='QY&**F,$\"%D?F37$$\"0KKKp33+\"F3$\"%F;F37$$\"099*36 [.5F3$\"%G8F37$$\"0'ffCN:15F3$\"$%)*F37$$\"0yx-%f#)35F3$\"$@'F37$$\"0g ffN)\\65F3$\"$x#F37$$\"0utt/^h,\"F3$!$l\"F37$$\"0)yyQP!3-\"F3$!$=#F37$ $\"0&\\\\%3IJ-\"F3F[z7$$\"0---Vca-\"F3$\"$S#F37$$\"044fx#yF5F3$\"$L'F3 7$$\"0;;;74,.\"F3$\"%h5F37$$\"0qpWHs7.\"F3$\"%d7F37$$\"0BBtYNC.\"F3$\" %;9F37$$\"0ww,k)fL5F3$\"%6:F37$$\"0III\"=wM5F3$\"$X%F37$$\"0PP(e\")3P5 F3$\"$j%F37$$\"0WWW]9%R5F3$\"$w%F37$$\"0eee>nS/\"F3$\"$\"[F37$$\"0tss) )>([5F3$\"$l%F37$$\"0kk9#\\u`5F3$\"$`%F37$$\"0ccc&*p(e5F3$\"$c%F37$$\" 0[[)*)\\zj5F3$\"$r%F37$$\"0SSS-?)o5F3$\"$!\\F37$$\"0CCC4q)y5F3$\"$n&F3 7$$\"0333;?*)3\"F3$\"$`(F37$$\"0GGG^6T4\"F3$\"$Z)F37$$\"0[[['GI*4\"F3$ \"$%*)F37$$\"0ooo@%\\/6F3$\"$'))F37$$\"0*))))obo46F3$\"$+*F37$$\"0544# p([6\"F3$\"%o5F37$$\"0IHHFo+7\"F3$\"%E9F37$$\"0NM46m87\"F3$\"$h&F37$$ \"0SR*[RmA6F3$\"$q&F37$$\"0XWpyhR7\"F3$\"$\"eF37$$\"0]\\\\if_7\"F3$\"$ *eF37$$\"0gf4Iby7\"F3$\"$'fF37$$\"0qpp(4XI6F3$\"$$fF37$$\"0A@@qHb8\"F3 $\"$t&F37$$\"0tssU319\"F3Fdfo7$$\"0CCC:(oX6F3$\"$&fF37$$\"0wvv(ew]6F3$ \"$D'F37$$\"0zyyKB4;\"F3$\"$\\(F37$$\"0#==y23r6F3$\"$$)*F37$$\"0OOOj34 =\"F3$\"%X5F37$$\"0\"44*[O2>\"F3$\"%F9F37$$\"0sA5(\\'>>\"F3$\"%K:F37$$ \"0aaHX$>$>\"F3$\"%J;F37$$\"0O')[$>U%>\"F3$\"$8(F37$$\"0==oT]c>\"F3$\" $?(F37$$\"0#=o!Q2\")>\"F3$\"$H(F37$$\"0YXXMk0?\"F3F^jo7$$\"0tsAFya?\"F 3$\"$D(F37$$\"0+++?#R57F3$\"$Q(F37$$\"0zyyN/8A\"F3$\"$=)F37$$\"0edd^;A B\"F3$\"%?5F37$$\"0(pp%fswB\"F3$\"%N6F37$$\"0OOOnGJC\"F3$\"%V7F37$$\"0 11JrceC\"F3$\"%H8F37$$\"0wvDv%e[7F3$\"%p9F37$$\"0h5Bx[*\\7F3$\"%j:F37$ $\"0YX?z78D\"F3$\"%s;F37$$\"0I!y6on_7F3F]co7$$\"0:::$3/a7F3$\"$&*)F37$ $\"0**)*)\\4lt7F3$\"$\"**F37$$\"0$GGo5E$H\"F3$\"%39F37$$\"0mmmJyeH\"F3 F^]p7$$\"0]]]c&\\)H\"F3$\"%0F37$$\"0===1IPI\"F3$\"%G6F37$$\"05 5goQ]I\"F3$\"%/6F37$$\"0---JZjI\"F3$\"%'4\"F37$$\"0%RRMfl28F3$\"%-6F37 $$\"0'eeeX'*38F3$\"%D6F37$$\"0qpp!=e68F3$\"%y6F37$$\"0a``0*>98F3$\"%47 F37$$\"0A@@bL%>8F3$\"%P7F37$$\"0*))))[!oYK\"F3$\"%m7F37$$\"0sssH&GF8F3 $\"%W7F37$$\"0ccca-*H8F3$\"%\">\"F37$$\"0[[)p6@J8F3$\"%o6F37$$\"0SSSz> DL\"F3$\"%c6F37$$\"0KK#=%GQL\"F3$\"%j6F37$$\"0CCC/P^L\"F3$\"%07F37$$\" 0222(*4TN\"F3$\"&+_\"F,7$$\"0!**)*)*G3t8F3$\"&5h\"F,7$$\"0UUF,7$$\"0 +++6aMQ\"F3$\"&_C#F,7$$\"0Ew8^]ZQ\"F3$\"&JN#F,7$$\"0__F\"p/'Q\"F3$\"&K V#F,7$$\"0yGTJVtQ\"F3$\"&\"GDF,7$$\"000brR')Q\"F3$\"&n*=F,7$$\"0ed#=DB \"R\"F3$\"&<$>F,7$$\"0555KDQR\"F3$\"&t%>F,7$$\"0???`'>/9F3$\"&z5#F,7$$ \"0IIIunXT\"F3$\"&$zCF,7$$\"0W%pbvy:9F3$\"&qg#F,7$$\"0ee$ot+<9F3$\"&a@ #F,7$$\"0sA5=F#=9F3$\"&*HAF,7$$\"0'oo$*pW>9F3$\"&jC#F,7$$\"09:!>m)=U\" F3$\"&:D#F,7$$\"0VVVCEVU\"F3$\"&WF#F,7$$\"0++]\\0#H9F3$\"&XM#F,7$$\"0c ccu%3M9F3$\"&U[#F,7$$\"0%[)4PClV\"F3$\"&8`#F,7$$\"088j*R'*Q9F3$\"&6b#F ,7$$\"0Gx*3Q=S9F3$\"&3e#F,7$$\"0UT;i.9W\"F3$\"&vl#F,7$$\"0c0VVBEW\"F3$ \"&Mw#F,7$$\"0qppCVQW\"F3$\"&BY#F,7$$\"0EEw\\A([9F3$\"&%zCF,7$$\"0$GG[ qe9F3$\"&(RDF,7$$\"0>=o-x*f9F3$\"& &GDF,7$$\"0EDD3_7Y\"F3$\"&!GDF,7$$\"0LK#Qr_i9F3$\"&Hb#F,7$$\"0SRR>-QY \"F3$\"&%=EF,7$$\"0a``I_jY\"F3$\"&l!GF,7$$\"0onnT-*o9F3$\"&q#GF,7$$\"0 #==GDXr9F3$\"&([DF,7$$\"0'ffRE+u9F3$\"&*QDF,7$$\"0___3.U[\"F3$\"&=e#F, 7$$\"0444`.W\\\"F3$\"&$fEF,7$$\"06668\\V^\"F3$\"&`a#F,7$$\"0888t%HM:F3 $\"&SO#F,7$$\"0iii#fohf\"F3$\"&El\"F,7$$\"0jiiEzih\"F3$\"&,Z\"F,7$$\"0!**)*=ATd;F3$\"%U6F 37$$\"0onnI5wm\"F3$\"%#4\"F37$$\"0YXXR3yn\"F3$\"$Z*F37$$\"0NM%Qu!Ho\"F 3$\"$N&F37$$\"0CBB[1!)o\"F3$\"$2#F37$$\"0Y&HV7G*o\"F3$\"$b*F37$$\"0onU +c0p\"F3$\"$d*F37$$\"0!*R_wI=p\"F3$\"$i*F37$$\"077i_0Jp\"F3$\"$o*F37$$ \"0cc\"[]l&p\"F3$\"$j*F37$$\"0,,,d/#)p\"F3$\"$\\*F37$$\"0srr`Ypr\"F3$ \"$3)F37$$\"0UUU])oNp O,26=F3$!$;&F37$$\"0wvv!4F7=F3$\"$<&F37$$\"0WV$\\Cn9=F3$\"$(\\F37$$\"0 666*R2<=F3F``o7$$\"0]\\*z]>A=F3$\"$&[F37$$\"0)yyohJF=F3$\"$*\\F37$$\"0 EEwDPC$=F3$\"$%\\F37$$\"0kkkMev$=F3$\"$t%F37$$\"0TTT_+y%=F3$\"$@%F37$$ \"0===qU!e=F3$\"$[#F37$$\"0FFFxXy'=F3$\"#JF37$$\"0OOO%)[w(=F3$!#sF37$$ \"0\"44z.b#)=F3$!$m#F37$$\"0YXX\">X()=F3$!$!oF37$$\"054%)Hx'))=F3Fb^l7 $$\"0tsAo-**)=F3$\"$(QF37$$\"0OOh1G6*=F3$\"$x$F37$$\"0+++X`B*=F3$\"$h$ F37$$\"0GFx@/[*=F3$\"$P$F37$$\"0baa)\\D(*=F3$\"$C$F37$$\"0dc1^(p->F3$ \"$R$F37$$\"0fee.S\"3>F3F\\gn7$$\"0hg5c#e8>F3$\"$u$F37$$\"0jii3D!>>F3$ \"$e$F37$$\"0nmm85*H>F3$\"$G$F37$$\"0rqq=&zS>F3Fj`r7$$\"0[ZZ\\Y'f>F3$! $%=F37$$\"0CCC!y\\y>F3Fiar7$$\"0yxFNs6)>F3$!$$RF37$$\"0JJJ!p%Q)>F3$!$! fF37$$\"0%[[`9_')>F3$!$S)F37$$\"0QQQ+'>*)>F3$!%&3\"F37$$\"0::!zK`!*>F3 $\"$q#F37$$\"0#>>a0(=*>F3$\"$>#F37$$\"0oo$Hy?$*>F3$\"$X\"F37$$\"0XXX5X X*>F3$\"#eF37$$\"0)*)*[l>s*>F3$!$=\"F37$$\"0___?%*)**>F3F\\_n7$$\"011c voD+#F3$!$`$F37$$\"0fffIV_+#F3$!$!RF37$$\"078j&y\"z+#F3$!$!QF37$$\"0mm mS#f5?F3$!$N$F37$$\"0utt]Tf,#F3$!$,#F37$$\"0\"3331H@?F3$!#yF37$$\"0yy. w4#F3$!%h;F37$$\"0'[)fD'G+@F3$!%q=F3 7$$\"0hggc_H5#F3$!%O?F37$$\"0KK29`_5#F3$!%O@F37$$\"0//ar`v5#F3$!%&=#F3 7$$\"0!*RF+/(3@F3$!%!>#F37$$\"0wv+Ha)4@F3$!%z@F37$$\"0i6ud/56#F3$!%`@F 37$$\"0[ZZ'[:7@F3$!%7@F37$$\"0?>%RaX9@F3$!%%)>F37$$\"0\"449gv;@F3$!%\" z\"F37$$\"0ii()ec!>@F3$!%V:F37$$\"0MMM;d87#F3$!%V7F37$$\"011\"QxlB@F3$ !$.*F37$$\"0yxFJef7#F3$!$P&F37$$\"0]\\u))e#G@F3$!$h\"F37$$\"0@@@Yf08#F 3$\"$*>F37$$\"0#HzO+'G8#F3$\"$D&F37$$\"0kk9hg^8#F3$\"$*yF37$$\"0OOh=hu 8#F3F^gq7$$\"0333wh(R@F3$\"%R5F37$$\"0==o%=QU@F3$\"$l*F37$$\"0GGG$>+X@ F3$\"$2(F37$$\"0LLe(>JY@F3$\"$8&F37$$\"0QQ)=?iZ@F3$\"$t#F37$$\"0VV=1K* [@F3Fajl7$$\"0[[[5U-:#F3$!$<$F37$$\"0``y9_::#F3$!$^'F37$$\"0ee3>iG:#F3 $!$(**F37$$\"0jjQBsT:#F3$!%R8F37$$\"0oooF#[b@F3$!%d;F37$$\"0tt)>Bzc@F3 $!%G>F37$$\"0yyGO-\"e@F3$!%B@F37$$\"0%Q)eS7%f@F3$!$M#F37$$\"0*))))[Csg @F3$!$N#F37$$\"0544iif;#F3$!$Z#F37$$\"0IHHz-7<#F3$!$b#F37$$\"0]\\\\'HW w@F3$!$d#F37$$\"0qpp8$o\"=#F3Fhel7$$\"0?>>j1=>#F3$!$_#F37$$\"0poo7I>?# F3Fhel7$$\"0===i`?@#F3Fg^n7$$\"0onn6x@A#F3$!$Q#F37$$\"0$GG)*RHKAF3F[]o 7$$\"0)zzz3TUAF3$!$A#F37$$\"0888wFDD#F3$!$o#F37$$\"0GGGkWEE#F3$!$a$F37 $$\"0&\\\\pR!GG#F3$!$Z&F37$$\"0ihhHjHI#F3$!$G)F37$$\"0;;m*\\!yI#F3$!$w *F37$$\"0rqqpYEJ#F3$!%s6F37$$\"0)zHZv1:BF3$!%&G\"F37$$\"0EDvR)[BF3$!%@:F37$$\"0;mGn>6K#F3$! %x:F37$$\"0!)zz4IBK#F3$!$O#F37$$\"0*)))))\\8?L#F3$!$9#F37$$\"0)zz**opT BF3$!$&=F37$$\"0EEE\"\\;_BF3$!$t\"F37$$\"0aaa#HjiBF3$!$\"=F37$$\"0#GGQ 45tBF3$!$&>F37$$\"0666&*oNQ#F3$!$*>F37$$\"0;;;]ANS#F3$!$m\"F37$$\"0@@@ 0wMU#F3FA7$$\"0--_4E(GCF3$!$F\"F37$$\"0#GGQh(RV#F3$!$M\"F37$$\"0jj8=E# RCF3$!$Y\"F37$$\"0WWWAwWW#F3Ff\\o7$$\"0111Jw\\X#F3$!$@#F37$$\"0onnRwaY #F3$!$#HF37$$\"0(pp4m[%[#F3$!$`%F37$$\"0EEE#o\\.DF3$!$Q(F37$$\"0YYYu,S ^#F3$!%15F37$$\"0mmmm1X_#F3$!%D8F37$$\"0=>>y>e_#F3F_[t7$$\"0rrr*G8FDF3 F_[t7$$\"0CCC,Y%GDF3$!$K#F37$$\"0www7f(HDF3$!$J#F37$$\"0\"==e`QKDF3$!$ E#F37$$\"0'oo)e6]`#F3F^^t7$$\"0'pp\\SESDF3F]`m7$$\"0222^;ba#F3$!$(>F37 $$\"0!33`ua]DF3Fdbt7$$\"0aaaRybb#F3$!$w\"F37$$\"0GGyL41c#F3$!$r\"F37$$ \"0---GScc#F3F]dt7$$\"0]\\\\;-dd#F3$!$j\"F37$$\"0(pp\\Sw&e#F3Fejt7$$\" 0ONNW,ef#F3Fejt7$$\"0utt$)Qeg#F3$!$i\"F37$$\"0777Bweh#F3$!$k\"F37$$\"0 ]]]i8fi#F3$!$u\"F37$$\"0'ee==)ok#F3$!$<#F37$$\"0@@@,]ym#F3Fc^t7$$\"0!) zzC1vn#F3$!$&GF37$$\"0QQQ[iro#F3$!$3$F37$$\"0(pp>(=op#F3Fh^t7$$\"0cbb& \\Z1FF3$!$Y%F37$$\"0QP(3'>9r#F3$!$8&F37$$\"0?>>Ekjr#F3$!$(eF37$$\"065& )eO)=FF3$!$B'F37$$\"0-,^\"*38s#F3$!$c'F37$$\"0Z'Ry]aAFF3$!$3#F37$$\"0# >pT7yBFF3$!$4#F37$$\"0Q()\\S<]s#F3F]^n7$$\"0$GGoNDEFF3F_bt7$$\"0YYY(G9 OFF3$!$F#F37$$\"0555=Kgu#F3$!$;#F37$$\"0...:^pv#F3F`it7$$\"0'ff>,(yw#F 3$!$*=F37$$\"0*)))))3*yyFF3$!$(=F37$$\"0#==e!3(*y#F3F_au7$$\"0000H%f*z #F3F_au7$$\"0GGG_![4GF3Fcct7$$\"0_^^vm$>GF3F_\\u7$$\"0vuu)HDHGF3$!$\\# F37$$\"0YY'\\#3V$GF3$!$k#F37$$\"0===^j$RGF3$!$t#F37$$\"0!**)Rx=W%GF3Fj bu7$$\"0ihh.u%\\GF3$!$i#F37$$\"0000c%efGF3F`it7$$\"0[[[3&ppGF3F`bm7$$ \"0iii:O[(GF3$!#bF37$$\"0wwwAx*zGF3$!#KF37$$\"0$QQjxa#)GF3Fbdu7$$\"0!4 4*H=^)GF3$!#RF37$$\"0)zzM))o()GF3Fj\\m7$$\"0000Pf-*GF3Fh`l7$$\"0MLL^T0 !HF3F_[t7$$\"0ihhlB3\"HF3$!$-$F37$$\"0777I\\b\"HF3$!$A$F37$$\"0jii%\\F ?HF3F]fu7$$\"0988f+]#HF3F\\]u7$$\"0kjjBE(HHF3Fe]r7$$\"0999)=XMHF3$!$p# F37$$\"0lkk_x\"RHF3F\\iq7$$\"0;::<.R%HF3$!$X#F37$$\"0mll\")G'[HF3$!$V# F37$$\"0edde.(eHF3$!$Y#F37$$\"0]\\\\Ny(oHF3$!$]#F37$$\"0UTT7`)yHF3F\\i q7$$\"0LLL*y#*))HF3Fjbu7$$\"0@@@0C*3IF3$!$C%F37$$\"0444@?*GIF3$!$$[F37 $$\"0!33[]hRIF3$!$,$F37$$\"0___))4.0$F3$\"#=F37$$\"0QQQIdc0$F3$\"$v\"F 37$$\"0CCCs/51$F3$\"$)GF37$$\"0<<$F3$!#\"*F37$$\"0333vO??$F3F^ct7$$\"0WWWqf<@$F3$!$L# F37$$\"0ii7=@m@$F3$!$x\"F37$$\"0!33eE[@KF3F]r7$$\"0*)*['R8RA$F3$\"#_F3 7$$\"0)*)*[8WjA$F3$\"$]\"F37$$\"0`.T]fvA$F3$\"$)>F37$$\"033L([xGKF3$\" $T#F37$$\"0i7DC!**HKF3$\"$v#F37$$\"0<<t()G$F3Fi[t7$$\"0;::*>-%H$F3$!$I#F37$$\"0TS Se>XI$F3$!$n\"F37$$\"0mll<<]J$F3$!$2\"F37$$\"0jiio>TL$F3$!$`\"F37$$\"0 gff>AKN$F3$!$!GF37$$\"0_^,q$HeLF3$!$/$F37$$\"0WVV?lLO$F3$!$C$F37$$\"0O N&3nVoLF3$!$G$F37$$\"0GFF@3NP$F3$!$B$F37$$\"0766A^OQ$F3$!$4$F37$$\"0& \\\\HUz$R$F3F_ev7$$\"0WVV\"Gp.MF3$!$+$F37$$\"0#>>*R\"f8MF3$!$*HF37$$\" 0SSS)**[BMF3$!$D$F37$$\"0*))))o&)QLMF3$!$c$F37$$\"0$HHR(=TW$F3$!$2$F37 $$\"0(pp4*[[X$F3$!$C\"F37$$\"0**)*[*R@gMF3Ffcl7$$\"0,,,3zbY$F3$!\"$F37 $$\"0..`;W4Z$F3F][l7$$\"0000D4jZ$F3Fdhv7$$\"0ee3a^4[$F3$!$#[F37$$\"077 7$Qf&[$F3$!$F&F37$$\"0ml:7O-\\$F3$!$V&F37$$\"0>>>Ty[\\$F3$!$J&F37$$\"0 ssAq?&*\\$F3$!$4&F37$$\"0EEE*H;/NF3$!$\"\\F37$$\"0!)zHG0)3NF3$!$![F37$ $\"0LLLdZM^$F3$!$y%F37$$\"0===D6T_$F3$!$x%F37$$\"0...$\\xMNF3$!$%[F37$ $\"0)yy3'Qaa$F3Fb`m7$$\"0tssG-hb$F3$!$Z'F37$$\"0oo=R3'eNF3$!$e'F37$$\" 0kkk\\96c$F3$!$h'F37$$\"0gg5g?Oc$F3$!$]'F37$$\"0cccqEhc$F3$!$C'F37$$\" 0[[[\"*Q6d$F3$!$K&F37$$\"0SSS7^hd$F3$!$*RF37$$\"0KKKLj6e$F3F[gu7$$\"0C CCavhe$F3$!$0#F37$$\"0;;;v(=\"f$F3Fcbv7$$\"0333'**>'f$F3$!$6%F37$$\"0m m\"f=o)f$F3$!$m%F37$$\"0DDvvj6g$F3$!$j&F37$$\"0%Q)elXOg$F3Fd\\w7$$\"0U UUbFhg$F3$!$&QF37$$\"0ff4N\"46OF3Fjat7$$\"0www9bgh$F3Fb_w7$$\"0566u#)f i$F3$!$]$F37$$\"0XXXL5fj$F3$!$l%F37$$\"0aaa#e%ek$F3$!$u%F37$$\"0kjjJ\" ybOF3$!$r%F37$$\"0\"44*=l#eOF3Ffbw7$$\"0===1\\2m$F3$!$p%F37$$\"0YXX$HB jOF3$!$f%F37$$\"0tss!orlOF3$!$V%F37$$\"0GFFb%oqOF3$!$s$F37$$\"0#==)H_c n$F3$!$U#F37$$\"0+++(ey&o$F3$\"$#=F37$$\"0===W>fp$F3Feeq7$$\"0FFxA')4q $F3$\"$9&F37$$\"0OOO,`gq$F3$\"$'GF37$$\"0\"4f1ke3PF3$\"#!*F37$$\"0YX&* z>6r$F3$!$b\"F37$$\"0++D>`Or$F3$!$Q%F37$$\"0baae'=;PF3$!$X(F37$$\"0YX& R>()=PF3$!%r5F37$$\"0OOOHd:s$F3$!%o8F37$$\"0FFxkUUs$F3$!%/;F37$$\"0=== +Gps$F3$!%Y3'QF3$!$2(F37$$\"0KKKe>>2f)yRF3$!$l&F37$$\"0SRRIWT)R F3$!$&pF37$$\"0gff`H%*)RF3$!$&*)F37$$\"0lkR%3v!*RF3$!$Z*F37$$\"0qp>:s? *RF3$!$$**F37$$\"0vu*fMR$*RF3$!$K$F37$$\"0!)zzw9Z*RF3F]ex7$$\"0&[)f2Og *RF3$!$L$F37$$\"0!**)RQdt*RF3$!$O$F37$$\"0&\\*>py')*RF3$!$Z$F37$$\"\"% F)$!$v$F3-%'COLOURG6&%$RGBGF(F($\"*++++\"Fbjl-%+AXESLABELSG6$Q\"x6\"Q! F`gx-%%VIEWG6$;F(Fbfx%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 123 "We can investigate the error obtained by applying polynomial interpolation compared with using (partial) Runge -Kutta steps." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 194 "de := diff(y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3; \nic := y(0)=1;\ngn2 := desolveRK(\{de,ic\},y(x),x=0..4,method=rk78b,o utput=rkstep);\nevalf[15](plot('gn2'(x)-g(x),x=0..4,color=magenta,nump oints=100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"y G6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\"\"\"#F3F3*&\"\"&F3-%$cosG6#,$*&\"\"$F3 F,F3F3F3F3F3F)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6# \"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 693 138 138 {PLOTDATA 2 "6&- %'CURVESG6#7_z7$$\"\"!F)$\"\"\"!#:7$$\"0srrrJo0\"!#;$!\"'!#97$$\"0WVVV jO6#F0F17$$\"0;:::&\\qJF0$!#IF37$$\"0(ooooKFUF0$!#\\F37$$\"0]\\\\\\qo9 &F0$!#]F37$$\"057779k1'F0F?7$$\"0vxx-+jH'F0$!#aF37$$\"0SVV$f=ElF0$!#oF 37$$\"0544%=2cnF0$!#sF37$$\"0vuuudf)pF0$!#rF37$$\"0011cHdW(F0$!#pF37$$ \"0PPPP,b!zF0$!#nF37$$\"0$HHH$*>/7F,$!#zF37$$\"0mllX!f?;F,$!#!*F37$$\" 0&\\\\\\D+N?F,$!#**F37$$\"0UTT\"e0J@F,$!#'*F37$$\"0)yyy!4rA#F,$!#&*F37 $$\"0MMMMiJK#F,$!$1\"F37$$\"0\"333c@>CF,$!$0\"F37$$\"0?>>zI\"=EF,$!$, \"F37$$\"0edd(f/F37 $$\"0+**)R$e$GtF,$\"#LF37$$\"0!)zzH8gP(F,$\"#_F37$$\"0gggDoOU(F,$\"#cF 37$$\"0STT@B8Z(F,$\"#bF37$$\"0+..8Lmc(F,Fdy7$$\"0lkk/V>m(F,Fdy7$$\"0ST T@$3ryF,$\"#eF37$$\"0===QB-3)F,$\"#fF37$$\"0!zyyUPz#)F,$\"#hF37$$\"0dd dF37$$\"0qqX\\Pg!*)F,$\"$.#F3 7$$\"055gnjz\"*)F,$\"$4#F37$$\"0]\\u&)*))H*)F,Fa]l7$$\"0!*)))Qg\"=%*)F ,$\"$3#F37$$\"0qn>> \"\\dF*F,$\"$?#F37$$\"0][[3t:[*F,$\"$G#F37$$\"00000(R(o*F,$\"$N#F37$$ \"0!yxxOH%z*F,$\"$U#F37$$\"0]]]I!>,**F,$\"$]#F37$$\"0KKKp33+\"F3$\"$k# F37$$\"0gffN)\\65F3$\"$\"HF37$$\"0;;;74,.\"F3$\"$+%F37$$\"0tss))>([5F3 $\"$e%F37$$\"0SSS-?)o5F3$\"$\"[F37$$\"0333;?*)3\"F3$\"$3&F37$$\"0qpp(4 XI6F3$\"$y&F37$$\"0#==y23r6F3$\"$g'F37$$\"0+++?#R57F3$\"$e(F37$$\"0::: $3/a7F3$\"$+*F37$$\"0$GGo5E$H\"F3$\"%&3\"F37$$\"0a``0*>98F3$\"%07F37$$ \"0CCC/P^L\"F3$\"%\\8F37$$\"0222(*4TN\"F3$\"&$=:F,7$$\"0!**)*)*G3t8F3$ \"&vo\"F,7$$\"0555KDQR\"F3$\"&j%>F,7$$\"0IIIunXT\"F3$\"&%z@F,7$$\"0ccc u%3M9F3$\"&vQ#F,7$$\"0$GG[qe9F3$\"&Ee#F,7$$ \"0SRR>-QY\"F3$\"&,h#F,7$$\"0onnT-*o9F3$\"&qe#F,7$$\"0'ffRE+u9F3$\"&Cd #F,7$$\"0CCC'G5z9F3$\"&le#F,7$$\"0___3.U[\"F3$\"&>f#F,7$$\"0!333LI*[\" F3$\"&#)e#F,7$$\"0444`.W\\\"F3$\"&^d#F,7$$\"06668\\V^\"F3$\"&aY#F,7$$ \"0888t%HM:F3$\"&=N#F,7$$\"0iii#fohf\"F3$\"&Um\"F,7$$\"0jiiEzih\"F3$\"&7Z\"F,7$$\"0EEEuXoj \"F3$\"%-8F37$$\"0!**)*=ATd;F3$\"%\\6F37$$\"0YXXR3yn\"F3$\"%C5F37$$\"0 ,,,d/#)p\"F3$\"$6*F37$$\"0UUU])oNF3$\"$P$F37$$\"0CCC!y\\y>F3$\"$,$F37$$\"0\"3331H@?F3$\"$m #F37$$\"0[[[g\"Hg?F3$\"$V#F37$$\"0aaa3A;3#F3$\"$L#F37$$\"0hggc_H5#F3F[ _l7$$\"0MMM;d87#F3$\"$w\"F37$$\"0333wh(R@F3$\"#qF37$$\"0[[[5U-:#F3$!#f F37$$\"0*))))[Csg@F3$!$L#F37$$\"0IHHz-7<#F3$!$I#F37$$\"0qpp8$o\"=#F3$! $F#F37$$\"0poo7I>?#F3$!$>#F37$$\"0onn6x@A#F3$!$9#F37$$\"0)zzz3TUAF3$!$ 3#F37$$\"0GGGkWEE#F3$!$/#F37$$\"0ihhICFF#F3$!$.#F37$$\"0&\\\\pR!GG#F3$ !$-#F37$$\"0GGGj$)GH#F3Fgbm7$$\"0ihhHjHI#F3$!$4#F37$$\"0rqqpYEJ#F3$!$? #F37$$\"0!)zz4IBK#F3$!$O#F37$$\"0*)))))\\8?L#F3$!$M#F37$$\"0)zz**opTBF 3$!$K#F37$$\"0aaa#HjiBF3Fcam7$$\"0666&*oNQ#F3$!$B#F37$$\"0@@@0wMU#F3$! $<#F37$$\"0onnRwaY#F3$!$6#F37$$\"0KKK]\")\\Z#F3$!$5#F37$$\"0(pp4m[%[#F 3Ficm7$$\"0ihhr\"*R\\#F3Fdfm7$$\"0EEE#o\\.DF3F]bm7$$\"0YYYu,S^#F3$!$@# F37$$\"0mmmm1X_#F3F]em7$$\"0'oo)e6]`#F3Fi`m7$$\"0222^;ba#F3F]em7$$\"0- --GScc#F3F^am7$$\"0(pp\\Sw&e#F3$!$G#F37$$\"0]]]i8fi#F3Fcam7$$\"0@@@,]y m#F3Feem7$$\"0cbb&\\Z1FF3$!$:#F37$$\"0555=Kgu#F3$!$2#F37$$\"0#==e!3(*y #F3Ficm7$$\"0vuu)HDHGF3Fdfm7$$\"0ihh.u%\\GF3$!$7#F37$$\"0[[[3&ppGF3F^i m7$$\"0000Pf-*GF3$!$E#F37$$\"0ihhlB3\"HF3Fhdm7$$\"0kjjBE(HHF3Fcdm7$$\" 0mll\")G'[HF3$!$Q#F37$$\"0LLL*y#*))HF3$!$U#F37$$\"0444@?*GIF3$!$^#F37$ $\"0___))4.0$F3$!$g#F37$$\"0'fff&*prIF3$!$r#F37$$\"0111-v04$F3$!$u#F37 $$\"0;;;[]%4JF3$!$x#F37$$\"0*))))3s+`JF3$!$&GF37$$\"0III]gE<$F3$!$(GF3 7$$\"0srrz8B>$F3$!$!HF37$$\"0333vO??$F3$!$*GF37$$\"0WWWqf<@$F3Fd]n7$$ \"0!33eE[@KF3Fj\\n7$$\"0<<AKN$F3$!$z#F37$$\"0 &\\\\HUz$R$F3Fd]n7$$\"0#>>*R\"f8MF3Fi]n7$$\"0*))))o&)QLMF3$!$#HF37$$\" 0\"44aOvQMF3$!$&HF37$$\"0$HHR(=TW$F3$!$*HF37$$\"0&\\\\CQ[\\MF3$!$0$F37 $$\"0(pp4*[[X$F3$!$:$F37$$\"0,,,3zbY$F3$!$_$F37$$\"0000D4jZ$F3$!$S%F37 $$\"0W$4B)puZ$F3$!$b%F37$$\"0#=o&RI'yMF3$!$g%F37$$\"0?q#o4zzMF3$!$f%F3 7$$\"0ee3a^4[$F3Fjcn7$$\"0NNgosK[$F3Fjcn7$$\"0777$Qf&[$F3Fecn7$$\"0ml: 7O-\\$F3Fecn7$$\"0>>>Ty[\\$F3Fecn7$$\"0EEE*H;/NF3$!$i%F37$$\"0LLLdZM^$ F3F^en7$$\"0...$\\xMNF3$!$j%F37$$\"0tssG-hb$F3$!$l%F37$$\"0cccqEhc$F3$ !$q%F37$$\"0SSS7^hd$F3$!$#[F37$$\"0CCCavhe$F3$!$1&F37$$\"0333'**>'f$F3 $!$c&F37$$\"0mm\"f=o)f$F3$!$u&F37$$\"0DDvvj6g$F3$!$!eF37$$\"0%Q)elXOg$ F3$!$z&F37$$\"0UUUbFhg$F3F^hn7$$\"0ff4N\"46OF3$!$y&F37$$\"0www9bgh$F3$ !$x&F37$$\"0566u#)fi$F3$!$w&F37$$\"0XXXL5fj$F3$!$v&F37$$\"0kjjJ\"ybOF3 $!$s&F37$$\"0#==)H_cn$F3$!$m&F37$$\"0+++(ey&o$F3$!$i&F37$$\"0===W>fp$F 3$!$a&F37$$\"0OOO,`gq$F3$!$S&F37$$\"0baae'=;PF3$!$7&F37$$\"0#===%pwt$F 3$!$m$F37$$\"0444D_\"fPF3$!$\"HF37$$\"0[[[!*\\)yPF3Fi]n7$$\"0)yyeva)z$ F3$!$$GF37$$\"0EDDn\"*z\"QF3$!$!GF37$$\"0jiiyNu$QF3$!$v#F37$$\"0]]]]Gy %QF3$!$w#F37$$\"0QQQA@#eQF3$!$)GF37$$\"0KKKe>>2f)yRF3$!$/$F37$$\"0gff`H%*)RF3$!$ A$F37$$\"\"%F)$!$J$F3-%'COLOURG6&%$RGBG$\"*++++\"!\")F(Fgao-%+AXESLABE LSG6$Q\"x6\"Q!F^bo-%%VIEWG6$;F(F_ao%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph compares the two methods of interpolation in terms of their errors. The discrete points give the errors at the interpola tion points whose horizontal location is determined by extracting the \+ " }{TEXT 288 1 "x" }{TEXT -1 38 " coordinates from a discrete solution ." }}{PARA 0 "" 0 "" {TEXT -1 74 "The error curve for the polynomial i nterpolation obtained via the option \"" }{TEXT 262 15 "output=rkinter p" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" }{TEXT -1 107 " \+ while the error curve for interpolation obtained by performing Runge-K utta steps obtained via the option \"" }{TEXT 262 13 "output=rkstep" } {TEXT -1 15 "\" is shown in " }{TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 586 "de := diff(y(x),x)=(ln(x+2)+5*cos(3*x))/y(x)^3;\nic := y(0)=1; \ngn1 := desolveRK(\{de,ic\},x=0..1.6,method=rk78b,output=rkinterp):\n gn2 := desolveRK(\{de,ic\},x=0..1.6,method=rk78b,output=rkstep):\npts \+ := desolveRK(\{de,ic\},x=0..1.6,method=rk78b,output=points):\npts2 := \+ [seq([pts[i,1],evalf[18](gn2(pts[i,1])-g(pts[i,1]))],i=1..nops(pts))]: \np1 := plot([pts2$3],style=point,symbol=[circle,diamond,cross],color= [black,coral$2]):\np2 := evalf[18](plot(['gn1'(x)-g(x),'gn2'(x)-g(x)], x=0.8..1.5,\n color=[blue,magenta],numpoints=100)):\nplots [display]([p1,p2],view=[0.8..1.5,-1e-11..3e-11]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,*&,&-%#lnG6#,&F,\"\"\" \"\"#F3F3*&\"\"&F3-%$cosG6#,$*&\"\"$F3F,F3F3F3F3F3F)!\"$" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 704 277 277 {PLOTDATA 2 "6)-%'CURVESG6&7@7$$\"\"!F)$\"31++++ +++5!#N7$$\"3-+++++++5!#>$!37++++++$H&!#J7$$\"39+++.tz]CF0$!39+++++g!H $!#I7$$\"3!******\\BH$oUF0$!3m**********p'Q&F97$$\"3U+++=90mlF0$!3o*** *******p`sF97$$\"3_*****>TJAY*F0$!3y**********4g))F97$$\"3(******pL$)* 48!#=$!3\"***********y.5!#H7$$\"31+++-INk\"Fep$\"3%****** ****>>4(FO7$$\"31+++!>4DD\"Fep$\"3g*********pG&*)FO7$$\"3!******\\e4EI \"Fep$\"33++++?@N6!#G7$$\"35+++v#o%[8Fep$\"3!*********Rbp9F\\r7$$\"3)* *****\\MeuQ\"Fep$\"3)********fb7)=F\\r7$$\"3-+++]i0;9Fep$\"34++++@A+AF \\r7$$\"34+++@)HJW\"Fep$\"3))********=*\\Y#F\\r7$$\"31+++IKLq9Fep$\"3# ********px)fDF\\r7$$\"33+++:g&*)\\\"Fep$\"3()*******4>#QDF\\r7$$\"34++ +S\\[a`:Fep$\"3-++++k]O@F\\ r7$$\"3)******HA+6e\"Fep$\"3()*******Hx@#=F\\r7$$\"33+++++++;Fep$\"31+ +++@=H;F\\r-%'COLOURG6&%$RGBGF)F)F)-%'SYMBOLG6#%'CIRCLEG-%&STYLEG6#%&P OINTG-F$6&F&-F`u6&Fbu$\"*++++\"!\")$\")AR!)\\FavF(-Fdu6#%(DIAMONDGFgu- F$6&F&F]v-Fdu6#%&CROSSGFgu-F$6$7bal7$$\"\")!\"\"$\"'_::Fep7$$\"3?????# yR2)FL$\"''[t\"Fep7$$\"3////uiMQ\")FL$\"'bm?Fep7$$\"3jiii#)[t5#)FL$\"' qaEFep7$$\"3!**)*)*)HLg$G)FL$\"'xXMFep7$$\"3;;;;Ya7c$)FL$\"'zdUFep7$$ \"3!)yyy)3W(*Q)FL$\"'&Gc%Fep7$$\"3TTTTJFOB%)FL$\"'fxZFep7$$\"3++++5ywS %)FL$\"'RV[Fep7$$\"3geee))G6_l)FL$ \"'Y2IFep7$$\"3+**)*)RRnOn)FL$\"'Q9GFep7$$\"3!GGyS\\&*Go)FL$\"'tQFFep7 $$\"3lmm;%fB@p)FL$\"'@!o#Fep7$$\"3]]]D%p^8q)FL$\"'?TEFep7$$\"3MMMM%zz0 r)FL$\"'2CEFep7$$\"3]]]]Dg$os)FL$\"'.aEFep7$$\"3lmmmcA4V()FL$\"'WqFFep 7$$\"3!GGGy[[$f()FL$\"'&G)HFep7$$\"3**)*)*)*=Zgv()FL$\"'$yH$Fep7$$\"3+ ,,,^g?7))FL$\"'Z'Q%Fep7$$\"3....$Q2)[))FL$\"'T1fFep7$$\"3NLLL$>$=n))FL $\"'1RnFep7$$\"3ljjj.!fb)))FL$\"'3EvFep7$$\"3!)yyy3pu%*))FL$\"'8ryFep7 $$\"3&RRRR\"[$R!*)FL$\"'*H;)Fep7$$\"3qssA!zJi!*)FL$\"'_D#)Fep7$$\"3]^^ ^m(G&3*)FL$\"'D$G)Fep7$$\"3III!GuD3\"*)FL$\"''eL)Fep7$$\"35444>F78*)FL $\"'0z?Fep7$$\"3lmmmrmr<*)FL$\"'W8@Fep7$$\"3CCCCC1JA*)FL$\"'d\"=#Fep7$ $\"3gggg?wsd*)FL$\"'OgLFep7$$\"3(pppphWJ**)FL$\"'y;G%\\!*FL$\"'*Gq&Fep7$$\"3QQ QQo'ou0*FL$\"'T.dFep7$$\"3qsssFCr&4*FL$\"'dG`Fep7$$\"32222(=cR8*FL$\"' miXFep7$$\"3GGGG[6v)>*FL$\"'B)>$Fep7$$\"30000?rVO#*FL$\"''\\n#Fep7$$\" 3#====4BTF*FL$\"'3GCFep7$$\"3lkk9FB!3H*FL$\"'Q+CFep7$$\"3]ZZZi:[2$*FL$ \"'l9CFep7$$\"3III!yzgTK*FL$\"'ojCFep7$$\"38888L+%3M*FL$\"'&)RDFep7$$ \"3]ZZZi&RuP*FL$\"')pw#Fep7$$\"3#====4RST*FL$\"'vGIFep7$$\"3wvvv0>u$[* FL$\"'ImNFep7$$\"3!)zzzz%pkb*FL$\"'S%[%Fep7$$\"3&GGGyyi)*e*FL$\"'!\\A& Fep7$$\"3'eeee4cKi*FL$\"'=riFep7$$\"3&[[[)*Gv#f'*FL$\"'=)z(Fep7$$\"3%Q QQQ[%H&p*FL$\"'rX(*Fep7$$\"3SQQQ.$3Ft*FL$\"(YV@\"Fep7$$\"3$HHHH7A,x*FL $\"(^cZ\"Fep7$$\"3&GGGG'4p-)*FL$\"('R+%**FL$\"(&\\v?Fep7$$\"3qppp4#*Gy**FL$\"()*e)=Fep7$$\"3vsssZZ1 '***FL$\"([Bu\"Fep7$$\"3edddGSQ,5Fep$\"($4o:Fep7$$\"3)yyyBehJ+\"Fep$\" (UqO\"Fep7$$\"3====O\"R\\+\"Fep$\"([Z9\"Fep7$$\"3kjj)3,fm+\"Fep$\"'Ei \"*Fep7$$\"3444f&))y$35Fep$\"'MDoFep7$$\"3aaaHg()455Fep$\"'SHXFep7$$\" 3++++N'==,\"Fep$\"')zP#Fep7$$\"3)yyGEEGP,\"Fep$\"&*QHFep7$$\"3wvvD!*yj :5Fep$!'*yJ\"Fep7$$\"3kjj)y^Zv,\"Fep$!'_0BFep7$$\"3_^^^XrX>5Fep$!'GNDF ep7$$\"3QPP(3.t6-\"Fep$!''G,#Fep7$$\"3CBBB;*))G-\"Fep$!&Bk(Fep7$$\"354 4f,[gC5Fep$\"')H>\"Fep7$$\"3&\\\\\\po?j-\"Fep$\"'zrPFep7$$\"3QQQ)QsOs- \"Fep$\"'*fM&Fep7$$\"3#===3w_\"G5Fep$\"'.4qFep7$$\"3DDDv(zo!H5Fep$\"'y 5()Fep7$$\"3ooooM[)*H5Fep$\"(B*Q5Fep7$$\"3777ir3!4.\"Fep$\"(Bp>\"Fep7$ $\"3bbbb3p\"=.\"Fep$\"($4O8Fep7$$\"3)*)*)*[XHtK5Fep$\"(DeW\"Fep7$$\"3U UUU#)*[O.\"Fep$\"(*p8:Fep7$$\"3'eLF))\\cQ.\"Fep$\"'V@WFep7$$\"3HH/B:S1 M5Fep$\"'%eU%Fep7$$\"3sANjJ:FM5Fep$\"'HKWFep7$$\"3;;m.[!zW.\"Fep$\"'\\ SWFep7$$\"3..G%33%*[.\"Fep$\"'UhWFep7$$\"3!**)*[O64`.\"Fep$\"'-([%Fep7 $$\"3kj8Ez\"Rh.\"Fep$\"'#oa%Fep7$$\"3PPP([Cpp.\"Fep$\"'$3h%Fep7$$\"3%[ [)4w$H'Q5Fep$\"'.FZFep7$$\"3KKKK2&*GS5Fep$\"'(\\![Fep7$$\"3+++DpW5U5Fe p$\"'QO[Fep7$$\"3onnR/\"Fep$\"'*z\"[Fep7$$\"3ONN5$RMd/\"Fep$\"'IlZ Fep7$$\"3....b$\\v/\"Fep$\"'R'p%Fep7$$\"3,,,w#4d#\\5Fep$\"'[JYFep7$$\" 3**)*)*[I['40\"Fep$\"'IxXFep7$$\"3(pp>#oDn_5Fep$\"'fSXFep7$$\"3&\\\\\\ fI!Qa5Fep$\"'OCXFep7$$\"3%RRRRQlh0\"Fep$\"'Y]z0\"Fep$ \"'S`XFep7$$\"3#>>>*Rbtf5Fep$\"'w#f%Fep7$$\"3\"444zh?:1\"Fep$\"'eUYFep 7$$\"3WWW%z46]1\"Fep$\"'ucZFep7$$\"3)zzzzd,&o5Fep$\"'y()[Fep7$$\"3@@@@ '**4e2\"Fep$\"'tQ`Fep7$$\"3gfffr)[G3\"Fep$\"'6*H'Fep7$$\"3KKKKQr/!4\"F ep$\"'0axFep7$$\"3aaa/pkh$4\"Fep$\"'4/%)Fep7$$\"3xwww*z&=(4\"Fep$\"'BF ))Fep7$$\"3kjj)=sD))4\"Fep$\"'2B*)Fep7$$\"3]]]+WcY+6Fep$\"'qd*)Fep7$$ \"3PPP7mb5-6Fep$\"'gT*)Fep7$$\"3CCCC)[XP5\"Fep$\"'4%*))Fep7$$\"3cbb0C] i06Fep$\"'aQ))Fep7$$\"3(ooo)fX]26Fep$\"'IP))Fep7$$\"3___xFVW36Fep$\"'S y))Fep7$$\"3===o&4%Q46Fep$\"'if*)Fep7$$\"3%QQ)ejQK56Fep$\"'J!4*Fep7$$ \"3]\\\\\\JOE66Fep$\"'Lz#*Fep7$$\"3(ppp**yDY6\"Fep$\"(*z`5Fep7$$\"3WWW W[z)z6\"Fep$\"(x?F\"Fep7$$\"3hh6**QT))=6Fep$\"(V&R8Fep7$$\"3yyy`H.y>6F ep$\"(ViS\"Fep7$$\"3PP7\"[UG-7\"Fep$\"(-\"Q9Fep7$$\"3'ff%3?ln?6Fep$\"( '=o9Fep7$$\"3Dv7sn0!47\"Fep$\"(_B[\"Fep7$$\"3aazN:Y7@6Fep$\"(8e\\\"Fep 7$$\"3%Qj%*Hm[87\"Fep$\"'U;cFep7$$\"3888j5Fd@6Fep$\"'[BcFep7$$\"3[ZZs \"4lL7\"Fep$\"'[XdFep7$$\"3#===GZd^7\"Fep$\"'a#)eFep7$$\"3tssA5I(o7\"F ep$\"'XgfFep7$$\"3kjjjZ&)eG6Fep$\"'6tfFep7$$\"3baa/&3/.8\"Fep$\"')R$fF ep7$$\"3YXXXA'>?8\"Fep$\"'vmeFep7$$\"3`__F1X#R8\"Fep$\"':)y&Fep7$$\"3g ff4!RHe8\"Fep$\"'kHdFep7$$\"3nmm\"RFMx8\"Fep$\"'K0dFep7$$\"3utttd\"R'R 6Fep$\"'h=dFep7$$\"3333eO\"QH9\"Fep$\"'[:eFep7$$\"3UUUU:rBY6Fep$\"'Oof Fep7$$\"3TTTTces`6Fep$\"'4hkFep7$$\"3&[[[3.^0;\"Fep$\"'WEuFep7$$\"3111 1*p;!o6Fep$\"'Qx\"*Fep7$$\"3555g.vBr6Fep$\"'\"*f)*Fep7$$\"399993$eW<\" Fep$\"(t\"H5Fep7$$\"3&[[[$oBHw6Fep$\"(i//\"Fep7$$\"3cbbbGk7y6Fep$\"(\"Fep$\"(S3U\"Fep7$$\"3ZYY'R!>U#>\"Fep$\"(S.d\"Fep7$$ \"3MM4`\"Fep$\"(.ag\"Fep7$$\"3AAs4JrI$>\"Fep$\"(Yyj\"Fep7$$\"3;m. )yVGN>\"Fep$\"'E(4(Fep7$$\"355NmW(\\P>\"Fep$\"'R0rFep7$$\"3/amW^5(R>\" Fep$\"'([6(Fep7$$\"3)zzH#eB>%>\"Fep$\"'SDrFep7$$\"3utBO&ex]>\"Fep$\"'v srFep7$$\"3]\\\\\\7G'f>\"Fep$\"'b>sFep7$$\"3$GGyNvEx>\"Fep$\"'/&G(Fep7 $$\"3;;;m%p!\\*>\"Fep$\"'&QI(Fep7$$\"3]\\\\uNYD,7Fep$\"'[*G(Fep7$$\"3$ GGGod=I?\"Fep$\"'+lsFep7$$\"3utt)><8Z?\"Fep$\"'@^sFep7$$\"3kkk9nxS17Fe p$\"'zesFep7$$\"3bbbIiB537Fep$\"'D#H(Fep7$$\"3YYYYdpz47Fep$\"'b]tFep7$ $\"3XXX&>wgM@\"Fep$\"'-TvFep7$$\"3WWWWmX7<7Fep$\"'O%z(Fep7$$\"377774$3 TA\"Fep$\"'+\"Fep7$$\"3'fffR%>6Q7Fep$ \"(,H9\"Fep7$$\"3mmmmm')yT7Fep$\"(`D@\"Fep7$$\"3PPPP*QlaC\"Fep$\"(vRJ \"Fep7$$\"3a``.\\q)*[7Fep$\"(M_\\\"Fep7$$\"3qppp3(3DD\"Fep$\"(Clw\"Fep 7$$\"3M%=(ow#GFD\"Fep$\"'Rg*)Fep7$$\"3**)RxY%y%HD\"Fep$\"'sl*)Fep7$$\" 3k8wm7u;`7Fep$\"';p*)Fep7$$\"3GGyl!)pQ`7Fep$\"'=r*)Fep7$$\"3ed#Qm6EQD \"Fep$\"',s*)Fep7$$\"3(oo=EDlUD\"Fep$\"'Uq*)Fep7$$\"3YX&zX_V^D\"Fep$\" 'Am*)Fep7$$\"3///a'z@gD\"Fep$\"'Mn*)Fep7$$\"3@@@YS$yxD\"Fep$\"'-)**)Fe p7$$\"3QQQQ%)[`f7Fep$\"'Aj!*Fep7$$\"3DDDD=V?j7Fep$\"'HU#*Fep7$$\"37777 _P(oE\"Fep$\"'%eU*Fep7$$\"3AAAA)G\"Fep$\"( vR=\"Fep7$$\"3]\\\\\\\"4f;H\"Fep$\"(?IK\"Fep7$$\"3\"333GF>^H\"Fep$\"(* 4::Fep7$$\"3$GGGj&zl)H\"Fep$\"(CHr\"Fep7$$\"3&[[[)Rm>-8Fep$\"(M$4>Fep7 $$\"3a`Gsh:U-8Fep$\"(Ar#>Fep7$$\"3AAsf$[YEI\"Fep$\"(-a8\"Fep7$$\"3\"4f raSrGI\"Fep$\"(%fN6Fep7$$\"3gffMFj4.8Fep$\"('QM6Fep7$$\"3(pp%4rha.8Fep $\"(n!H6Fep7$$\"3MMM%[,'*RI\"Fep$\"(h;7\"Fep7$$\"3444M-d*[I\"Fep$\"(gm 5\"Fep7$$\"3%QQQ)*Q&z08Fep$\"(,t4\"Fep7$$\"3feeLx]p18Fep$\"(Ak4\"Fep7$ $\"3MLL$[w%f28Fep$\"(XP5\"Fep7$$\"3333L_W\\38Fep$\"(Et6\"Fep7$$\"3$GGG )RTR48Fep$\"((fM6Fep7$$\"3OOOO\"4-FJ\"Fep$\"(CZ>\"Fep7$$\"3!**)*)*G/5g J\"Fep$\"(B7A\"Fep7$$\"3ihh67i`>8Fep$\"(\"4R7Fep7$$\"3LLLL\"QiIK\"Fep$ \"(xHE\"Fep7$$\"3sssAX?\"[K\"Fep$\"(nbE\"Fep7$$\"377774L\"Fep$\"(h#e6Fep7$$\"3n mmmJ%oGL\"Fep$\"(>W:\"Fep7$$\"3#>>>*HU!QL\"Fep$\"(#[j6Fep7$$\"3UUUUEen N8Fep$\"(eTB\"Fep7$$\"3$HHHHUZvL\"Fep$\"(V$)Q\"Fep7$$\"3wwwwD!*>R8Fep$ \"(-!*e\"Fep7$$\"3ggggG1&3M\"Fep$\"(3D#=Fep7$$\"3WWWWJA]U8Fep$\"(:5/#F ep7$$\"3GGGGMQ:W8Fep$\"(`\")=#Fep7$$\"3utt)fBIYM\"Fep$\"(#36AFep7$$\"3 >>>pPm5X8Fep$\"($oCAFep7$$\"3kkkRRIeX8Fep$\"('eHAFep7$$\"35555T%fgM\"F ep$\"(lsA#Fep7$$\"3cbb!G%e`Y8Fep$\"(X-A#Fep7$$\"3,,,^WA,Z8Fep$\"(>B@#F ep7$$\"3YYY@Y')[Z8Fep$\"(R)3AFep7$$\"3#>>>z/lzM\"Fep$\"(1q@#Fep7$$\"3l k9x[K?[8Fep$\"(*GGAFep7$$\"3QPPi\\9W[8Fep$\"($>YAFep7$$\"355gZ]'z'[8Fe p$\"(HIZ\"Fep7$$\"3$GGG8&y\"*[8Fep$\"(9PZ\"Fep7$$\"3GGG.`UR\\8Fep$\"() ft9Fep7$$\"3uttta1()\\8Fep$\")^%HZ\"FL7$$\"3lkk9eM#3N\"Fep$\")KAu9FL7$ $\"3cbbbhix^8Fep$\")?v\"[\"FL7$$\"3....)e:_N\"Fep$\")4YT:FL7$$\"3]]]]9 \\le8Fep$\")h(He\"FL7$$\"3yxxF[z0i8Fep$\")$33g\"FL7$$\"30000#)4Yl8Fep$ \")&pHi\"FL7$$\"3222Kf1Hn8Fep$\")g%>j\"FL7$$\"3444fO.7p8Fep$\")fKK;FL7 $$\"3666'Q,]4P\"Fep$\")#HRi\"FL7$$\"38888\"pzFP\"Fep$\")L3:;FL7$$\"3_^ ^^[QXw8Fep$\")17o;FL7$$\"3!**)*)*e+G,Q\"Fep$\")()4?>FL7$$\"3vuu\\v%*z \"Q\"Fep$\")PV(3#FL7$$\"3gff4X4Z$Q\"Fep$\")h#)\\AFL7$$\"3WWWp9C9&Q\"Fe p$\")i$)yBFL7$$\"3HHHH%)Q\"oQ\"Fep$\")pK%[#FL7$$\"3wD8gid.(Q\"Fep$\")T t+DFL7$$\"3AA(44kdsQ\"Fep$\")<))=DFL7$$\"3o=\"=#>&zuQ\"Fep$\")7[\")=FL 7$$\"39:l_(R,xQ\"Fep$\")lA%)=FL7$$\"323L9a^9)Q\"Fep$\")3;\"*=FL7$$\"3+ ,,w5*)e)Q\"Fep$\")r$))*=FL7$$\"3'oo$*RUw%*Q\"Fep$\")A88>FL7$$\"3sssAPR O!R\"Fep$\")*pR#>FL7$$\"3WWWpj*Q@R\"Fep$\")ghP>FL7$$\"3;;;;!*R\"RR\"Fe p$\")c;]>FL7$$\"3'eee[\\ytR\"Fep$\")mE')>FL7$$\"3cbbb**H%3S\"Fep$\")$o H.#FL7$$\"3%QQQ)=TN39Fep$\")5[@AFL7$$\"3eee3APg69Fep$\").\\'G#FL7$$\"3 LLLLDL&[T\"Fep$\")dH4DFL7$$\"3YXqEh)>`T\"Fep$\")9cgDFL7$$\"3ed2?(R'y:9 Fep$\")YO5EFL7$$\"3k8w;l'>gT\"Fep$\")9*Gj#FL7$$\"3qpW8LHD;9Fep$\")6s-A FL7$$\"3wD85,i[;9Fep$\")uP1AFL7$$\"3#==o!p%>nT\"Fep$\")eY5AFL7$$\"311c $4a_wT\"Fep$\"))=lA#FL7$$\"3III!Gh&e=9Fep$\")'ztB#FL7$$\"3yyy`cI-Q9Fep$\")CvSDFL7$$\"3OOOOI^$>W\"Fep$\"):@+FFL7$$\"3ssss'zpBW\"Fep$\")y#*RFFL7$$\"3344fNr eU9Fep$\")E#*fFFL7$$\"3XXXXuW!GW\"Fep$\")gIzFFL7$$\"3#===L\"=-V9Fep$\" )IS(z#FL7$$\"3====_\"RKW\"Fep$\")RmlCFL7$$\"344frRe7W9Fep$\")\"p\"eCFL 7$$\"3+++DFD,X9Fep$\")LaZCFL7$$\"3\"44%y9#**eW\"Fep$\")omXCFL7$$\"3#== =B!fyY9Fep$\")%HGX#FL7$$\"3kjjQx#f&[9Fep$\"))[$yCFL7$$\"3YXXX_EL]9Fep$ \")Lt*\\#FL7$$\"3#===.S7AX\"Fep$\")Iw;DFL7$$\"3====[@4a9Fep$\")xjNDFL7 $$\"3OOO6A?.b9Fep$\")fvWDFL7$$\"3aaa/'*=(fX\"Fep$\")SA^DFL7$$\"3sss(*p <\"pX\"Fep$\")Q3`DFL7$$\"3\"444Rk^yX\"Fep$\")jO\\DFL7$$\"3SR*oiT8(e9Fe p$\")h\"=a#FL7$$\"3)yyG')=v&f9Fep$\")!*zKDFL7$$\"3OO'))4'pVg9Fep$\")CP EDFL7$$\"3&[[[Lt)Hh9Fep$\")`pFDFL7$$\"3#==o!yA-j9Fep$\")2FtDFL7$$\"3zy yyAeuk9Fep$\")IA'o#FL7$$\"3+**)RF=ZkY\"Fep$\")s#f\"GFL7$$\"3?>>pU&[\"o 9Fep$\")z@cGFL7$$\"3SRRk-*\\)p9Fep$\")g(\\y#FL7$$\"3gfffi7br9Fep$\")s' [a#FL7$$\"3+**)*[D1Ys9Fep$\")&pP`#FL7$$\"3RQQQ))*pLZ\"Fep$\")WnLDFL7$$ \"3yxxF^$zUZ\"Fep$\")lEUDFL7$$\"3=<<<9()=v9Fep$\")KJaDFL7$$\"3dcc1x!)4 w9Fep$\")jRlDFL7$$\"3'fff*Ru+x9Fep$\")0GtDFL7$$\"3ONN&G!o\"zZ\"Fep$\") xuxDFL7$$\"3vuuulh#)y9Fep$\")w%)zDFL7$$\"3$GGGB$4k![\"Fep$\")1C#e#FL7$ $\"3\"444*)pbC[\"Fep$\")_y%e#FL7$$\"3&\\\\*>#3jL[\"Fep$\")>e#FL7$$\" 3**)*)*[l/F%[\"Fep$\")(\\.e#FL7$$\"3...y[y<&[\"Fep$\")%)[sDFL7$$\"3222 2K_3'[\"Fep$\")'f0c#FL7$$\"3gff%G49x[\"Fep$\")U(Q`#FL7$$\"3777i`HM*[\" Fep$\")S9;DFL7$$\"3QQ)3SQd,\\\"Fep$\")#ev^#FL7$$\"3kkkR9=(4\\\"Fep$\") PoGDFL7$$\"3!44%yWiy\"\\\"Fep$\")x0]DFL7$$\"3<<<#Fep7$Fjgl$\"'VF#Fep7$F^il$\"'n,BFep7$Fhil$\"'\"3L#Fep7$Fbjl $\"'?lBFep7$F\\[m$\"'U1CFep7$Ff[m$\"'0]CFep7$F`\\m$\"'!4^#Fep7$Fj\\m$ \"'m)f#Fep7$F^^m$\"'/DFFep7$Fb_m$\"'q3HFep7$Ff`m$\"'ADKFep7$Fjam$\"';m OFep7$F^cm$\"'z()RFep7$Fbdm$\"'&yQ%Fep7$Fjfm$\"'7`WFep7$Fdgm$\"''y[%Fe p7$Fhhm$\"'-mXFep7$F\\jm$\"'TUYFep7$F`[n$\"'RDZFep7$Fj[n$\"'u4[Fep7$F_ \\n$\"'l,\\Fep7$Fd\\n$\"'$R*\\Fep7$Fi\\n$\"'^#4&Fep7$Fc]n$\"'8&>&Fep7$ Fg^n$\"'k%H&Fep7$Fe`n$\"'(oT&Fep7$F_an$\"'+PbFep7$Fadn$\"'N\"o&Fep7$Fe en$\"'0.eFep7$Fifn$\"'DWfFep7$Fcgn$\"'*>2'Fep7$Fhgn$\"'WBiFep7$F]hn$\" 'snjFep7$Fbhn$\"'GKlFep7$F\\in$\"'-zmFep7$F`jn$\"'')[oFep7$Fjjn$\"'56q Fep7$F\\^o$\"'GirFep7$F`_o$\"'petFep7$Fd`o$\"'XcvFep7$F^ao$\"'*3y(Fep7 $Fcao$\"'\\0!)Fep7$Fhao$\"'l_#)Fep7$F]bo$\"'v#[)Fep7$Fgbo$\"'XN()Fep7$ Faco$\"'[r*)Fep7$Fcfo$\"'%GC*Fep7$F]go$\"'Bi&*Fep7$Fbgo$\"'6s)*Fep7$Fg go$\"(X0-\"Fep7$Faho$\"(C*e5Fep7$F[io$\"(=U4\"Fep7$Feio$\"(%yJ6Fep7$Fa ]p$\"(ce<\"Fep7$F[^p$\"(Av@\"Fep7$Fe^p$\"(@UE\"Fep7$Fi_p$\"(wGJ\"Fep7$ Fgap$\"(*Hn8Fep7$F[cp$\"(R2U\"Fep7$F[hp$\")lF*\\\"FL7$Fehp$\")**[e:FL7 $F_ip$\")Je>;FL7$Fcjp$\"))e#)o\"FL7$F][q$\")/ZkFL7$F]`q$\")2qB?FL7$Fb`q$\")Mc0@FL7$F\\aq$\")H#G=#FL7$F^d q$\")7XnAFL7$Fhdq$\")RrSBFL7$Fbeq$\")eC4CFL7$Fdhq$\")N'fY#FL7$Fbjq$\") bSDDFL7$F`\\r$\")eazDFL7$Fd]r$\").L*f#FL7$F^^r$\")!f.h#FL7$Fc^r$\")fc3 EFL7$Fh^r$\")Vd(f#FL7$$\"3IHzmA#***o9Fep$\")r$pe#FL7$F]_r$\")rirDFL7$$ \"3]\\*>Ee+2Z\"Fep$\")[FhDFL7$Fb_r$\")_RkDFL7$Ff`r$\")h!fd#FL7$Fjar$\" ).M%e#FL7$Fdbr$\")Re*e#FL7$Fhcr$\")7L\"f#FL7$F]dr$\")9r!f#FL7$Fbdr$\") i)*)e#FL7$F\\er$\")!Qee#FL7$Ffer$\")Z!4e#FL7$F`fr$\")itgDFL7$Fjfr$\")> .NDFL-F`u6&FbuF_vF(F_v-%+AXESLABELSG6%Q!6\"Fh]t-%%FONTG6#%(DEFAULTG-%% VIEWG6$;F`wFjfr;$Fbw!#6$\"\"$Fd^t" 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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 9" }{TEXT 297 61 " .. The accuracy of an adaptive order 8-9 Runge-Kutta m ethod " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 89 "In this example we construct a continuous numerical so lution to the differential equation" }}{PARA 257 "" 0 "" {TEXT -1 2 " \+ " }{XPPEDIT 18 0 "dy/dx = 3*y*cos*x/(1+3*y^4);" "6#/*&%#dyG\"\"\"%#dx G!\"\"*,\"\"$F&%\"yGF&%$cosGF&%\"xGF&,&F&F&*&F*F&*$F+\"\"%F&F&F(" } {TEXT -1 2 ", " }}{PARA 0 "" 0 "" {TEXT -1 33 "subject to the initial \+ condition " }{XPPEDIT 18 0 "y(0) = 1;" "6#/-%\"yG6#\"\"!\"\"\"" } {TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 132 "Maple can find an analytical solution although it has an awkward form which requires that an equation be solved for each evalu ation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 155 "de := diff(y(x),x)=3*y(x)*cos(x)/(1+3*y(x)^4);\nic : = y(0)=1;\ndsolve(\{de,ic\},y(x));\ng := unapply(rhs(%),x):\nplot(g(x) ,x=0..4*Pi,0..1.5,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"$\"\"\"F)F0-%$cosGF+F0,& F0F0*&F/F0)F)\"\"%F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#ic G/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\"yG6#%\"x G-%$expG6#,(*&#\"\"\"\"\"%F.-%)LambertWG6#,$*&\"\"$F.-F)6#,&*&\"#7F.-% $sinGF&F.F.F5F.F.F.F.!\"\"*&F5F.F;F.F.#F5F/F." }}{PARA 13 "" 1 "" {GLPLOT2D 615 199 199 {PLOTDATA 2 "6%-%'CURVESG6$7_r7$$\"\"!F)$\"\"\"F )7$$\"+'eb&p8!#5$\"+p`0$4\"!\"*7$$\"+r66RFF/$\"+Lp$)p6F27$$\"+iTvIRF/$ \"+iJ9E7F27$$\"+arRA^F/$\"+$H]VF\"F27$$\"+.:l-yF/$\"+,lWe8F27$$\"+Ks1] 5F2$\"+]P%[T\"F27$$\"+7rK%=\"F2$\"+6mmL9F27$$\"+\"*pe=8F2$\"+o:vY9F27$ $\"+'3jIW\"F2$\"+I=\"RX\"F27$$\"+\"=Rvc\"F2$\"+:8Pc9F27$$\"+uI)>j\"F2$ \"+.'3eX\"F27$$\"+npU'p\"F2$\"+iA*RX\"F27$$\"+g3(3w\"F2$\"+Hq\"4X\"F27 $$\"+`ZJD=F2$\"+F2$\"+_o]L9F27$$\"+>m!>4#F2$\"+6>y9 9F27$$\"+ANkdBF2$\"+I_Rf8F27$$\"+*e')4j#F2$\"+w(QPF\"F27$$\"+]pO^FF2$ \"+*Q'*[A\"F27$$\"+7turGF2$\"+'zbx;\"F27$$\"+'3ns+$F2$\"+e]V\"4\"F27$$ \"+hoyUJF2$\"+)F/7$$\"+D$R\\T$F2$\"+DjSjuF/7$$\"+dm]! [$F2$\"+E2;3nF/7$$\"+*)R2YNF2$\"+ta]EfF/7$$\"+@8k6OF2$\"+NAoe^F/7$$\"+ `'3sn$F2$\"+)4[mW%F/7$$\"+!\\\"H'z$F2$\"+Yz,uLF/7$$\"+GVP:RF2$\"+(y*f# f#F/7$$\"+S`(p0%F2$\"+X^Gg>F/7$$\"+_jd)>%F2$\"+m3'>b\"F/7$$\"+$)4`=VF2 $\"+g6%eK\"F/7$$\"+9c[QWF2$\"+Ji`y6F/7$$\"+!\\`#3XF2$\"+'R+;7\"F/7$$\" +m8-yXF2$\"+_2x#3\"F/7$$\"+U#*yZYF2$\"+#o201\"F/7$$\"+>rbN!3\"F/7$$\"+'HEG!\\ F2$\"+flg76F/7$$\"+)o#ek\\F2$\"+4pve6F/7$$\"+!z&4+^F2$\"+DFc;8F/7$$\"+ )))3cB&F2$\"+\"\\!yt:F/7$$\"+0%\\YO&F2$\"+Ov3\\>F/7$$\"+B**o$\\&F2$\"+ TAM3DF/7$$\"+l,LGcF2$\"+p,\"GP$F/7$$\"+4/(Hw&F2$\"+^:42YF/7$$\"+&H\"zC eF2$\"+Ro<#H&F/7$$\"+!=7m)eF2$\"+yP$4-'F/7$$\"+lIV[fF2$\"+]:CdnF/7$$\" +aRD5gF2$\"+bD/ouF/7$$\"+Ih$p2'F2$\"+=)RD=)F/7$$\"+5$=O9'F2$\"+rwfL))F /7$$\"+!\\+.@'F2$\"+p!R?U*F/7$$\"+mE)pF'F2$\"+0HE`**F/7$$\"+]2^:kF2$\" +)z)>!4\"F27$$\"+M)QSb'F2$\"+,HFo6F27$$\"+SziumF2$\"+s$HaA\"F27$$\"+Uq @&z'F2$\"+8DFu7F27$$\"+:hpbqF2$\"+MCVc8F27$$\"+&['zCtF2$\"+10Y89F27$$ \"+!fFkX(F2$\"+*)GLK9F27$$\"+)pe!)e(F2$\"+sBnX9F27$$\"+g&=ar(F2$\"+MjZ `9F27$$\"+D%yF%yF2$\"++SNc9F27$$\"+IT[8zF2$\"+\\#ReX\"F27$$\"+S)*=%)zF 2$\"+Ua\"QX\"F27$$\"+Xb*[0)F2$\"+K9F27$$\"+W,tz$)F2$\"+Yb-99F27$$\"+xp1^')F2$\"+!oXnN \"F27$$\"+w%Qp*))F2$\"+ZT7!G\"F27$$\"+?(R8.*F2$\"+p:IE7F27$$\"+o4ul\"* F2$\"+r$o@;\"F27$$\"+l??#H*F2$\"+\"z`.4\"F27$$\"+lJm=%*F2$\"+[^c/5F27$ $\"+]9&3b*F2$\"+^xed*)F/7$$\"+P(RIo*F2$\"+:&*RIwF/7$$\"+X)ewu*F2$\"+*) >b'*oF/7$$\"+]zF7)*F2$\"+&H8%HhF/7$$\"+bq*o()*F2$\"+=6sk`F/7$$\"+gh^T* *F2$\"+Qb$Rk%F/7$$\"+f;o25!\")$\"+0@l%R$F/7$$\"+-<@@5Fifl$\"+(Rr'>DF/7 $$\"+UFCM5Fifl$\"+GWA_>F/7$$\"+\"yts/\"Fifl$\"+_\"yGd\"F/7$$\"+,**fg5F ifl$\"+B'f$>8F/7$$\"+@g#R2\"Fifl$\"+YKOi6F/7$$\"+3R`!3\"Fifl$\"+(**yC6 \"F/7$$\"+%zTr3\"Fifl$\"+K`]y5F/7$$\"+!o\\P4\"Fifl$\"+2pBf5F/7$$\"+nvN +6Fifl$\"+2f*R0\"F/7$$\"+G&Hk5\"Fifl$\"+/6Qh5F/7$$\"+!\\,D6\"Fifl$\"+E (o13\"F/7$$\"+_Md=6Fifl$\"+:P cQ6Fifl$\"+AE4?8F/7$$\"+D?[_6Fifl$\"+e*3\")e\"F/7$$\"+C2$\\;\"Fifl$\"+ eJIa>F/7$$\"+A%zt<\"Fifl$\"+Q9G#\\#F/7$$\"+KBl!>\"Fifl$\"+0[]MLF/7$$\" +T_#R?\"Fifl$\"+h!4Y`%F/7$$\"+vrF57Fifl$\"+x.NK_F/7$$\"+4\"Hm@\"Fifl$ \"+Bh/zfF/7$$\"+V5)HA\"Fifl$\"+6V$ft'F/7$$\"+xHLH7Fifl$\"+.0#oY(F/7$$ \"+)**ehB\"Fifl$\"+u@d(>)F/7$$\"+=])HC\"Fifl$\"+ah\"='))F/7$$\"+Q5\") \\7Fifl$\"+ULlg%*F/7$$\"+fqjc7Fifl$\"+<)*******F/-%'COLOURG6&%$RGBG$\" #5!\"\"F(F(-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F($\"+iqjc7Fifl;F($ \"#:Fi_m" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Cur ve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 106 "We start by constructing a discrete solution and make a numerical comparison with the analytical solution." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 379 "de := diff(y(x),x)=3*y(x)*cos(x)/(1+3*y(x)^4);\nic : = y(0)=1;\npts := desolveRK(\{de,ic\},y(x),x=0..4*Pi,method=rk89,outpu t=points):\ncat(`The discrete solution has `,convert(nops(pts),string) ,` points`);\np1 := plot(pts,style=line,color=grey):\np2 := plot([pts$ 2],style=point,symbol=[diamond,cross],color=[black,red]):\nplots[displ ay]([p1,p2],view=[0..4*Pi,0..1.5],labels=[`x`,`y(x)`]);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"$\"\"\"F )F0-%$cosGF+F0,&F0F0*&F/F0)F)\"\"%F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%DThe~discrete~solution~has~72~pointsG" }}{PARA 13 "" 1 "" {GLPLOT2D 677 275 275 {PLOTDATA 2 "6'-%'CURVESG6%7do7$$\"\"!F)$\" \"\"F)7$$\"3-+++++++5!#>$\"31+++;TW25!#<7$$\"3y**************fF/$\"30+ ++ZD0V5F27$$\"3)******H?swP#!#=$\"3-+++W[$4:\"F27$$\"38+++oXZUYF;$\"3/ +++E)HeD\"F27$$\"3K+++D+pMuF;$\"3)******>=\"o[8F27$$\"3)*******ea$>?\" F2$\"3/+++()\\qN9F27$$\"3.+++K2ZE;F2$\"31+++?d!fX\"F27$$\"3.+++K2ZE@F2 $\"3#******4Ts*39F27$$\"3.+++K2ZEEF2$\"35+++\"*fUv7F27$$\"3#)*******zm y'GF2$\"3/+++YBup6F27$$\"3?+++3>PBJF2$\"3&*******>5[85F27$$\"3@+++2(H: C$F2$\"3%)******)yo0>*F;7$$\"39+++y/5#R$F2$\"3!******\\8%3:xF;7$$\"3)) ******Q#)\\yMF2$\"3V+++)4h=t'F;7$$\"3++++7k.pNF2$\"3#******>-OPl&F;7$$ \"3-+++Vk![l$F2$\"3C+++*y7:o%F;7$$\"3********y;8TPF2$\"3&)*****HElG$QF ;7$$\"3>+++W2BHQF2$\"3$******\\$ekIJF;7$$\"3;+++g^/]RF2$\"3/+++C'Q=T#F ;7$$\"3y*****z12\"oSF2$\"38+++OtB@>F;7$$\"3M+++nG\"R@%F2$\"30+++VHy<:F ;7$$\"3W+++2pe,WF2$\"3)*******[ar;7F;7$$\"3z******Rz))3YF2$\"3++++8V%4 2\"F;7$$\"33+++b67][F2$\"3'*******yMD%3\"F;7$$\"3#*******)Qf80&F2$\"3) ******>Pd*\\7F;7$$\"3.+++<[bO_F2$\"3))*****zM6gd\"F;7$$\"3k*****HWT+Q& F2$\"3,+++6Zz/?F;7$$\"30+++[L4+bF2$\"3)*******G/?UDF;7$$\"39+++Bz83cF2 $\"33+++$fa5A$F;7$$\"3t*****R%4J=dF2$\"3!******\\8i\\:%F;7$$\"38+++jRq +eF2$\"3k*****H[p#=]F;7$$\"3o******[F[$)eF2$\"3%)*****f0[N)fF;7$$\"3%) *****>H5M'fF2$\"3Z+++!\\8G$pF;7$$\"3q*****RU#[agF2$\"3a+++)oO)[zF;7$$ \"3))*****RnO+:'F2$\"3%******4S%*G*))F;7$$\"3=+++#)*3()G'F2$\"3.+++cc7 /5F27$$\"3&)*****4G=\\V'F2$\"3!*******>(\\?5\"F27$$\"3#)*****H_5(>nF2$ \"3/+++')=fW7F27$$\"3++++a\"ex(pF2$\"3\"******Rqs[L\"F27$$\"3<+++s$))y T(F2$\"3)******H2!RF9F27$$\"34+++^A%Q$yF2$\"33+++\"z6jX\"F27$$\"34+++^ A%QL)F2$\"3&******4-&>@9F27$$\"34+++^A%Q$))F2$\"3#******R8,BI\"F27$$\" 3[+++:L>!4*F2$\"3/+++*\\-'*>\"F27$$\"3O*****pz&>W$*F2$\"3-+++--(p0\"F2 7$$\"3m+++TMS#[*F2$\"3A+++7xT[&*F;7$$\"37*****HO*[2'*F2$\"3[+++A)3(>%) F;7$$\"3D+++$>w\\q*F2$\"3W+++Tph'Q(F;7$$\"3u*****f'*Hsz*F2$\"3/+++RWN4 jF;7$$\"3%*******RCWw)*F2$\"3_*****4z$**p`F;7$$\"3G*****p6F[\\l$\"3)*******H&z)=6F;7$$ \"3-+++[9]S6F[\\l$\"3-+++Z'p-N\"F;7$$\"3#******H@4t:\"F[\\l$\"3#****** 4Z'R8\"F[\\l$\"35+++NJB9OF;7$$\"31+++_n \\-7F[\\l$\"3%******pXjvQ%F;7$$\"3(******z&[G67F[\\l$\"3C+++oPY[`F;7$$ \"3,+++J17>7F[\\l$\"3_*****z[PpF'F;7$$\"31+++^>%pA\"F[\\l$\"3'******zY Ql>(F;7$$\"33+++WyfP7F[\\l$\"3^+++::?V$)F;7$$\"3%******R.))zC\"F[\\l$ \"3=+++F/$oI*F;7$$\"3++++hqjc7F[\\lF*-%'COLOURG6&%$RGBG$\")=THv!\")F_b lF_bl-%&STYLEG6#%%LINEG-F$6&F&-F\\bl6&F^blF)F)F)-%'SYMBOLG6#%(DIAMONDG -Fcbl6#%&POINTG-F$6&F&-F\\bl6&F^bl$\"*++++\"FablF(F(-F[cl6#%&CROSSGF^c l-%+AXESLABELSG6%%\"xG%%y(x)G-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F($\"0#fVh qjc7!#8;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" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 64 "A continuous solution can be co nstructed over the interval from " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"! " }{TEXT -1 4 " to " }{XPPEDIT 18 0 "x = 4;" "6#/%\"xG\"\"%" }{TEXT -1 21 " using the procedure " }{TEXT 0 9 "desolveRK" }{TEXT -1 20 " wi th the options ''" }{TEXT 262 11 "method=rk89" }{TEXT -1 9 "'' and '' " }{TEXT 262 15 "output=rkinterp" }{TEXT -1 3 "''." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 255 "de := diff( y(x),x)=3*y(x)*cos(x)/(1+3*y(x)^4);\nic := y(0)=1;\ngn1 := desolveRK( \{de,ic\},y(x),x=0..4*Pi,method=rk89,output=rkinterp);\nplot('gn1'(x), x=0..4*Pi,0..1.5,labels=[`x`,`y(x)`],\n color=COLOR(RGB, 1,.3,0),thickness=2,labels=[`x`,`y(x)`]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"$\"\"\"F)F0-%$c osGF+F0,&F0F0*&F/F0)F)\"\"%F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 736 244 244 {PLOTDATA 2 "6'-%'CURVESG6#7_r7$$\"\"!F)$\"\"\"F)7$$\"+'eb&p8! #5$\"+q`0$4\"!\"*7$$\"+r66RFF/$\"+Lp$)p6F27$$\"+iTvIRF/$\"+iJ9E7F27$$ \"+arRA^F/$\"+%H]VF\"F27$$\"+.:l-yF/$\"++lWe8F27$$\"+Ks1]5F2$\"+aP%[T \"F27$$\"+7rK%=\"F2$\"+8mmL9F27$$\"+\"*pe=8F2$\"+p:vY9F27$$\"+'3jIW\"F 2$\"+J=\"RX\"F27$$\"+\"=Rvc\"F2$\"+;8Pc9F27$$\"+uI)>j\"F2$\"+0'3eX\"F2 7$$\"+npU'p\"F2$\"+hA*RX\"F27$$\"+g3(3w\"F2$\"+Hq\"4X\"F27$$\"+`ZJD=F2 $\"+;RdY9F27$$\"+'o5'e>F2$\"+^o]L9F27$$\"+>m!>4#F2$\"+5>y99F27$$\"+ANk dBF2$\"+H_Rf8F27$$\"+*e')4j#F2$\"+w(QPF\"F27$$\"+]pO^FF2$\"+*Q'*[A\"F2 7$$\"+7turGF2$\"+'zbx;\"F27$$\"+'3ns+$F2$\"+f]V\"4\"F27$$\"+hoyUJF2$\" +;a.\"***F/7$$\"+x\\#3@$F2$\"+t$fDX*F/7$$\"+$4j)yKF2$\"+z9)[&))F/7$$\" +47!pM$F2$\"+T=<#>)F/7$$\"+D$R\\T$F2$\"+FjSjuF/7$$\"+dm]![$F2$\"+D2;3n F/7$$\"+*)R2YNF2$\"+sa]EfF/7$$\"+@8k6OF2$\"+SAoe^F/7$$\"+`'3sn$F2$\"+, \"[mW%F/7$$\"+!\\\"H'z$F2$\"+Zz,uLF/7$$\"+GVP:RF2$\"+&y*f#f#F/7$$\"+S` (p0%F2$\"+X^Gg>F/7$$\"+_jd)>%F2$\"+m3'>b\"F/7$$\"+$)4`=VF2$\"+g6%eK\"F /7$$\"+9c[QWF2$\"+Ji`y6F/7$$\"+!\\`#3XF2$\"+'R+;7\"F/7$$\"+m8-yXF2$\"+ _2x#3\"F/7$$\"+U#*yZYF2$\"+#o201\"F/7$$\"+>rbN!3\"F/7$$\"+'HEG!\\F2$\"+flg76F /7$$\"+)o#ek\\F2$\"+3pve6F/7$$\"+!z&4+^F2$\"+DFc;8F/7$$\"+)))3cB&F2$\" +#\\!yt:F/7$$\"+0%\\YO&F2$\"+Ov3\\>F/7$$\"+B**o$\\&F2$\"+UAM3DF/7$$\"+ l,LGcF2$\"+q,\"GP$F/7$$\"+4/(Hw&F2$\"+\\:42YF/7$$\"+&H\"zCeF2$\"+So<#H &F/7$$\"+!=7m)eF2$\"+wP$4-'F/7$$\"+lIV[fF2$\"+_:CdnF/7$$\"+aRD5gF2$\"+ `D/ouF/7$$\"+Ih$p2'F2$\"+<)RD=)F/7$$\"+5$=O9'F2$\"+rwfL))F/7$$\"+!\\+. @'F2$\"+o!R?U*F/7$$\"+mE)pF'F2$\"+/HE`**F/7$$\"+]2^:kF2$\"+)z)>!4\"F27 $$\"+M)QSb'F2$\"++HFo6F27$$\"+SziumF2$\"+r$HaA\"F27$$\"+Uq@&z'F2$\"+9D Fu7F27$$\"+:hpbqF2$\"+LCVc8F27$$\"+&['zCtF2$\"+00Y89F27$$\"+!fFkX(F2$ \"+!*GLK9F27$$\"+)pe!)e(F2$\"+rBnX9F27$$\"+g&=ar(F2$\"+KjZ`9F27$$\"+D% yF%yF2$\"+,SNc9F27$$\"+IT[8zF2$\"+]#ReX\"F27$$\"+S)*=%)zF2$\"+Ta\"QX\" F27$$\"+Xb*[0)F2$\"+=bF]9F27$$\"+`7gD\")F2$\"+%*p?X9F27$$\"++dm_#)F2$ \"+GZ>K9F27$$\"+W,tz$)F2$\"+\\b-99F27$$\"+xp1^')F2$\"+!oXnN\"F27$$\"+w %Qp*))F2$\"+ZT7!G\"F27$$\"+?(R8.*F2$\"+p:IE7F27$$\"+o4ul\"*F2$\"+r$o@; \"F27$$\"+l??#H*F2$\"+\"z`.4\"F27$$\"+lJm=%*F2$\"+[^c/5F27$$\"+]9&3b*F 2$\"+_xed*)F/7$$\"+P(RIo*F2$\"+9&*RIwF/7$$\"+X)ewu*F2$\"+\"*>b'*oF/7$$ \"+]zF7)*F2$\"+$H8%HhF/7$$\"+bq*o()*F2$\"+@6sk`F/7$$\"+gh^T**F2$\"+Rb$ Rk%F/7$$\"+f;o25!\")$\"+.@l%R$F/7$$\"+-<@@5Fifl$\"+'Rr'>DF/7$$\"+UFCM5 Fifl$\"+IWA_>F/7$$\"+\"yts/\"Fifl$\"+_\"yGd\"F/7$$\"+,**fg5Fifl$\"+B'f $>8F/7$$\"+@g#R2\"Fifl$\"+ZKOi6F/7$$\"+3R`!3\"Fifl$\"+)**yC6\"F/7$$\"+ %zTr3\"Fifl$\"+L`]y5F/7$$\"+!o\\P4\"Fifl$\"+2pBf5F/7$$\"+nvN+6Fifl$\"+ 2f*R0\"F/7$$\"+G&Hk5\"Fifl$\"+.6Qh5F/7$$\"+!\\,D6\"Fifl$\"+E(o13\"F/7$ $\"+_Md=6Fifl$\"+:PcQ6Fifl$\" +AE4?8F/7$$\"+D?[_6Fifl$\"+e*3\")e\"F/7$$\"+C2$\\;\"Fifl$\"+dJIa>F/7$$ \"+A%zt<\"Fifl$\"+R9G#\\#F/7$$\"+KBl!>\"Fifl$\"+3[]MLF/7$$\"+T_#R?\"Fi fl$\"+d!4Y`%F/7$$\"+vrF57Fifl$\"+x.NK_F/7$$\"+4\"Hm@\"Fifl$\"+Dh/zfF/7 $$\"+V5)HA\"Fifl$\"+4V$ft'F/7$$\"+xHLH7Fifl$\"+.0#oY(F/7$$\"+)**ehB\"F ifl$\"+v@d(>)F/7$$\"+=])HC\"Fifl$\"+`h\"='))F/7$$\"+Q5\")\\7Fifl$\"+UL lg%*F/7$$\"+fqjc7Fifl$\"+7)*******F/-%&COLORG6&%$RGBGF*$\"\"$!\"\"F(-% *THICKNESSG6#\"\"#-%+AXESLABELSG6$%\"xG%%y(x)G-%%VIEWG6$;F($\"+iqjc7Fi fl;F($\"#:Fi_m" 1 2 0 1 10 2 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 139 "The first error graph is plotted using standard 10 digit arith metic for the evaluation of the procedure which gives the numerical so lution." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "plot('gn1'(x)-g(x),x=0..4*Pi,color=blue);" }}{PARA 13 "" 1 "" {GLPLOT2D 663 192 192 {PLOTDATA 2 "6&-%'CURVESG6#7d`n7$$\" \"!F)F(7$$\"+5Csf&)!#7F(7$$\"+#[W>r\"!#6$!\"\"!\"*7$$\"+Cn\"zc#F1F(7$$ \"+l*))QU$F1F27$$\"+37')zUF1F(7$$\"+]M$e8&F1F(7$$\"+!p0=*fF1F(7$$\"+Iz xZoF1F(7$$\"+:Csf&)F1F(7$$\"+!pmr-\"!#5F(7$$\"+9Rw76FMF(7$$\"+Q6O)>\"F MF27$$\"+i$eRG\"FMF(7$$\"+'eb&p8FM$\"\"\"F47$$\"+5G:b9FMF(7$$\"+M+vS:F MF27$$\"+esME;FMF(7$$F0FMF27$$\"+1FMF27$$\"+yLLa?FMFZ7$$\"+-1$*R@FMF(7$$\"+Ey_DAFMF(7$$\"+]]76BFMF(7$$ \"+uAs'R#FMF(7$$\"+)\\>B[#FMF(7$$\"+An\"zc#FMF27$$\"+YR^`EFMF(7$$\"+r6 6RFFMF(7$$\"+mE$\\L$FMF(7$$\"+iTvIRFMF(7$$\"+5\\mGUFMF(7$$\"+ecdEXFMF( 7$$\"+K5`vYFMF(7$$\"+1k[C[FMF(7$$\"+$4k*)*[FMF27$$\"+!yTM(\\FMF(7$$\"+ l%>z/&FMF(7$$\"+arRA^FMFZ7$$\"++^:1_FMF(7$$\"+]I\"**G&FMF27$$\"++5nt`F MFZ7$$\"+X*GuX&FMF(7$$\"+!*o=TbFMFZ7$$\"+S[%\\i&FMFZ7$$\"+!z-(3dFMF(7$ $\"+S2Y#z&FMF(7$$\"+!p=i(eFMF27$$\"+Sm(*ffFMFZ7$$\"+!fMP/'FMF(7$$\"+ND \\FhFMF(7$$\"+![]7@'FMF27$$\"+I%3]H'FMF27$$\"+!Qm(yjFMF(7$$\"+IV_ikFMF Z7$$\"+!G#GYlFMF(7$$\"+D-/ImFM$\"\"#F47$$\"+q\")z8nFMF27$$\"+?hb(z'FMF Z7$$\"+qSJ\")oFM$!\"#F47$$\"+??2lpFMFiv7$$\"+q*H)[qFMF(7$$\"+:zeKrFMFd w7$$\"+geM;sFMF(7$$\"+5Q5+tFMF(7$$\"+g<'QQ(FMFZ7$$\"+5(>wY(FMF(7$$\"+g wP^vFMFZ7$$\"+0c8NwFMF27$$\"+bN*)=xFM$\"\"$F47$$\"+.:l-yFMF27$$\"+0n:x %)FMF27$$\"+5>m^\"*FMF27$$\"+g](fB*FM$!\"$F47$$\"+5#)G?$*FMFZ7$$\"+g8g /%*FMFZ7$$\"+5X\"*)[*FMF27$$\"+gwAt&*FMFbz7$$\"+53ad'*FMF27$$\"+gR&=u* FMFiv7$$\"+:r;E)*FMFdy7$$\"+q-[5**FMFbz7$$\"+?Mz%***FMFiv7$$\"+d1\"z+ \"F4F27$$\"+s>M;5F4FZ7$$\"+(GtZ-\"F4Fdw7$$\"+-Y?L5F4F(7$$\"+<6F4Fbz7$$\"+9%)eD6F4FZ7$$\"+d'zR8\"F4F(7$$\"++4PU6F4Fdw7$$\"+ U@w]6F4Fiv7$$\"+%Q`\"f6F4FZ7$$\"+FYan6F4F27$$\"+qe$f<\"F4Fdw7$$\"+7rK% =\"F4Fiv7$$\"+a$=F>\"F4FZ7$$\"+(f46?\"F4Fdw7$$\"+S3]47F4F27$$\"+#3#*y@ \"F4F27$$\"+CLGE7F4FZ7$$\"+nXnM7F4$\"\"&F47$$\"+5e1V7F4FZ7$$\"+_qX^7F4 F27$$\"+%H[)f7F4Fdy7$$\"+P&R#o7F4FZ7$$\"+!yImF\"F4F(7$$\"+A?-&G\"F4F27 $$\"+kKT$H\"F4FZ7$$\"+1X!=I\"F4FZ7$$\"+[d>58F4FZ7$$\"+\"*pe=8F4FZ7$$\" +'3jIW\"F4FZ7$$\"+\"=Rvc\"F4FZ7$$\"+oYfv:F4Fiv7$$\"+a,l$e\"F4Fiv7$$\"+ Tcq\"f\"F4Fiv7$$\"+G6w*f\"F4FZ7$$\"+9m\"yg\"F4Fiv7$$\"+,@(eh\"F4F27$$ \"+)eFRi\"F4Fiv7$$\"+uI)>j\"F4Fiv7$$\"+g&Q+k\"F4F(7$$\"+ZS4[;F4F(7$$\" +M&\\hl\"F4F(7$$\"+?]?k;F4FZ7$$\"+20Es;F4F(7$$\"+%*fJ!o\"F4F(7$$\"+![r $)o\"F4FZ7$$\"+npU'p\"F4F27$$\"+aC[/F4F27$$\"+>m!>4#F4F27$$\"+w^^3@F4F27$$\"+KP7D@ F4F27$$\"+5!GM8#F4FZ7$$\"+)GK<9#F4F(7$$\"+ml.]@F4FZ7$$\"+W3Me@F4FZ7$$ \"+A^km@F4F27$$\"++%\\\\<#F4F27$$\"+yOD$=#F4FZ7$$\"+dzb\">#F4F27$$\"+O A')*>#F4F27$$\"+9l;3AF4F(7$$\"+#zqk@#F4F(7$$\"+q]xCAF4F(7$$\"+[$zIB#F4 Fiv7$$\"+EOQTAF4FZ7$$\"+/zo\\AF4F27$$\"+$=#*zD#F4F(7$$\"+ikHmAF4F(7$$ \"+S2guAF4Fiv7$$\"+=]!HG#F4Fiv7$$\"+'H47H#F4F27$$\"+uN^*H#F4F(7$$\"+_y \"yI#F4FZ7$$\"+I@7;BF4FZ7$$\"+4kUCBF4F(7$$\"+)oIFL#F4FZ7$$\"+m\\.TBF4F iv7$$\"+W#R$\\BF4Fiv7$$\"+ANkdBF4F27$$\"+$\\&=mBF4Fiv7$$\"+kusuBF4F27$ $\"+N%pKQ#F4Fdw7$$\"+19\"=R#F4F(7$$\"+[`*)3CF4F(7$$\"+*GzfU#F4F(7$$\"+ g7_MCF4F27$$\"+IK1VCF4F(7$$\"+,_g^CF4F27$$\"+sr9gCF4Fdy7$$\"+V\"*ooCF4 F(7$$\"+96BxCF4F(7$$\"+&3td[#F4Fiv7$$\"+c]J%\\#F4F27$$\"+Fq&G]#F4Fiv7$ $\"+)**)R6DF4F27$$\"+o4%*>DF4F27$$\"+RH[GDF4F(7$$\"+5\\-PDF4FZ7$$\"+!) ocXDF4FZ7$$\"+^)3Tb#F4F(7$$\"+A3liDF4F(7$$\"+1(=of#F4F(7$$\"+*e')4j#F4 F(7$$\"+]pO^FF4F(7$$\"+7turGF4F(7$$\"+)H<-)GF4F27$$\"+%G(o))GF4F(7$$\" +qs:(*GF4F(7$$\"+csi0HF4F27$$\"+Us49HF4FZ7$$\"+GscAHF4F27$$\"+9s.JHF4F (7$$\"+*>2&RHF4FZ7$$\"+%=xz%HF4F(7$$\"+qrWcHF4FZ7$$\"+cr\"\\'HF4F(7$$ \"+UrQtHF4F(7$$\"+Gr&=)HF4F(7$$\"+9rK!*HF4F(7$$\"++rz)*HF4F(7$$\"+'3ns +$F4FZ7$$\"+sqt:IF4F(7$$\"+eq?CIF4FZ7$$\"+WqnKIF4F27$$\"+Iq9TIF4F(7$$ \"+-q3eIF4F(7$$\"+up-vIF4F(7$$\"+Yp'>4$F4F(7$$\"+=p!*3JF4F(7$$\"+/pP%F 4F(7$$\"+$)4`=VF4F(7$$\"+9c[QWF4F(7$$\"+m8-yXF4F(7$$\"+>rb([F4Fajm7$$\"+\\wmz[F4F(7$$\"+)>(Q()[F4Fajm7$$\"+Zn5&* [F4F(7$$\"+'HEG!\\F4F(7$$\"+%Rl#=\\F4F(7$$\"+#\\/P$\\F4F(7$$\"+TSUT\\F 4Fajm7$$\"+!fV\"\\\\F4F(7$$\"+RJ'o&\\F4F(7$$\"+)o#ek\\F4F]jm7$$\"+!z&4 +^F4F(7$$\"+)))3cB&F4Fajm7$$\"+?RnV_F4F(7$$\"+]*Q3`F4F(7$$\"+5#fiJ&F4F]jm7$$\"+SUKC` F4F(7$$\"+v#*QK`F4F]jm7$$\"+5VXS`F4F(7$$\"+S$>&[`F4F(7$$\"+qVec`F4F]jm 7$$\"+0%\\YO&F4F(7$$\"+SWrs`F4Fajm7$$\"+q%z2Q&F4F(7$$\"++X%))Q&F4Fajm7 $$\"+N&4pR&F4Fejm7$$\"+qX(\\S&F4Fajm7$$\"++'RIT&F4F]jm7$$\"+IY5@aF4Faj m7$$\"+l'p\"HaF4F]jm7$$\"+&zH9Y&F4F(7$$\"+B**o$\\&F4Fajm7$$\"+X+,hbF4F ajm7$$\"+l,LGcF4Fajm7$$\"+&G]cp&F4F(7$$\"+4/(Hw&F4Fc[n7$$\"+!=7m)eF4Fc [n7$$\"+aRD5gF4Fc[n7$$\"+Ih$p2'F4F]jm7$$\"+5$=O9'F4F(7$$\"+b))GghF4F(7 $$\"++%fp<'F4F(7$$\"+qYH&='F4F(7$$\"+X*HO>'F4Fajm7$$\"+?_'>?'F4F(7$$\" +!\\+.@'F4F]jm7$$\"+gdj=iF4Fejm7$$\"+N5(pA'F4Fejm7$$\"+5jINiF4Fajm7$$ \"+!eTOC'F4Fejm7$$\"+]o(>D'F4Fajm7$$\"+D@JgiF4Fejm7$$\"+&RZ'oiF4Fc[n7$ $\"+mE)pF'F4F]jm7$$\"+v1k&G'F4F(7$$\"+!o)H%H'F4F(7$$\"+&ocHI'F4F(7$$\" +!p9;J'F4F(7$$\"++2$*GjF4F(7$$\"+5nCYjF4F(7$$\"+I(y3Q'F4F(7$$\"+]2^:kF 4F(7$$\"+qF9]kF4F(7$$\"+!zuZ['F4F(7$$\"++34-lF4F(7$$\"+5oS>lF4F(7$$\"+ :[1GlF4F(7$$\"+?GsOlF4F(7$$\"+D3QXlF4F(7$$\"+M)QSb'F4F27$$\"+&QLVh'F4F 27$$\"+SziumF4F27$$\"+gZ;#o'F4F(7$$\"+!e,(*o'F4F(7$$\"++%Qsp'F4FZ7$$\" +:_x/nF4F(7$$\"+I?J7nF4F27$$\"+])[)>nF4F(7$$\"+qcQFnF4F(7$$\"+!\\A\\t' F4F27$$\"+5$fCu'F4F(7$$\"+Ih**\\nF4FZ7$$\"+]H`dnF4FZ7$$\"+l(p]w'F4FZ7$ $\"+&e1Ex'F4FZ7$$\"+0M9!y'F4F(7$$\"+D-o(y'F4F27$$\"+Uq@&z'F4FZ7$$\"+:q N.oF4F(7$$\"+&)p\\6oF4F(7$$\"+bpj>oF4Fdw7$$\"+DpxFoF4F27$$\"++p\"f$oF4 F27$$\"+qo0WoF4FZ7$$\"+So>_oF4F(7$$\"+5oLgoF4F(7$$\"+!yw%ooF4FZ7$$\"+] nhwoF4F27$$\"+?nv%)oF4F(7$$\"+&p'*G*oF4FZ7$$\"+qm.,pF4F(7$$\"+Sm<4pF4F iv7$$\"+5mJ[rF4Fdw7$$\"+b(3m:(F4F(7$$ \"+S\"=];(F4F27$$\"+IvUtrF4F27$$\"+:p$==(F4Fiv7$$\"++jC!>(F4FZ7$$\"+q] 12sF4FZ7$$\"+XQ)QA(F4FZ7$$\"+IKHKsF4Fiv7$$\"+?EqSsF4F(7$$\"+0?6\\sF4F2 7$$\"+!R@vD(F4F(7$$\"+!yIfE(F4Fiv7$$\"+l,MusF4FZ7$$\"+]&\\FG(F4F(7$$\" +S*e6H(F4Fiv7$$\"+D$o&*H(F4F(7$$\"+5x(zI(F4FZ7$$\"++rQ;tF4Fdw7$$\"+&[' zCtF4F27$$\"+IM-LtF4Fdy7$$\"+q.DTtF4Fiv7$$\"+:tZ\\tF4F(7$$\"+gUqdtF4FZ 7$$\"+07$fO(F4Fiv7$$\"+]\"eTP(F4FZ7$$\"+&4&Q#Q(F4FZ7$$\"+S?h!R(F4F(7$$ \"+&)*Q))R(F4Fdw7$$\"+If12uF4Fiv7$$\"+qGH:uF4F(7$$\"+:)>NU(F4FZ7$$\"+g nuJuF4F(7$$\"++P(*RuF4F(7$$\"+X1?[uF4F27$$\"+!fFkX(F4FZ7$$\"+NXlkuF4Fd y7$$\"+![\")GZ(F4F(7$$\"+D%36[(F4Fdw7$$\"+q`L*[(F4F27$$\"+:Bc(\\(F4F27 $$\"+g#*y0vF4Fiv7$$\"++i,9vF4F(7$$\"+XJCAvF4FZ7$$\"+!4q/`(F4Fdw7$$\"+I qpQvF4F27$$\"+vR#pa(F4Fdw7$$\"+?4:bvF4Fbz7$$\"+lyPjvF4FZ7$$\"+5[grvF4F iv7$$\"+b<$)zvF4F(7$$\"+)pe!)e(F4F27$$\"+!p=gf(F4Fdw7$$\"+!oyRg(F4F(7$ $\"+q'Q>h(F4Fbz7$$\"+l')*)>wF4FZ7$$\"+g'eyi(F4Fdy7$$\"+]'=ej(F4Fdy7$$ \"+S'yPk(F4F(7$$\"+I'Q!)F4Fdw7$$\"+04QG!)F4Fdy7$$ \"+?\">s.)F4FZ7$$\"+It0Y!)F4Fiv7$$\"+Xb*[0)F4FZ7$$\"+gPtj!)F4F(7$$\"+q >ds!)F4F27$$\"+&=593)F4F27$$\"++%[-4)F4FZ7$$\"+5m3*4)F4Fbz7$$\"+D[#z5) F4F(7$$\"+SIw;\")F4F27$$\"+`7gD\")F4F(7$$\"+!yUN8)F4FZ7$$\"+5V[T\")F4F (7$$\"+SeU\\\")F4Fdw7$$\"+ltOd\")F4FZ7$$\"+!*)3`;)F4Fdw7$$\"+?/Dt\")F4 Fiv7$$\"+]>>\"=)F4FZ7$$\"+vM8*=)F4FZ7$$\"++]2(>)F4F27$$\"+Il,0#)F4F27$ $\"+g!eH@)F4FZ7$$\"+!f**3A)F4F27$$\"+?6%)G#)F4F(7$$\"+XEyO#)F4F(7$$\"+ qTsW#)F4Fiv7$$\"++dm_#)F4Fdw7$$\"+Isgg#)F4FZ7$$\"+b([&o#)F4FZ7$$\"+!G! \\w#)F4F(7$$\"+5=V%G)F4FZ7$$\"+SLP#H)F4FZ7$$\"+l[J+$)F4Fdw7$$\"+!Rc#3$ )F4F27$$\"+?z>;$)F4F27$$\"+]%RTK)F4FZ7$$\"+v43K$)F4FZ7$$\"++D-S$)F4F27 $$\"+IS'zM)F4F(7$$\"+gb!fN)F4F(7$$\"+&3ZQO)F4F27$$\"+:')yr$)F4Fiv7$$\" +W,tz$)F4Fdy7$$\"+?%4#)Q)F4FZ7$$\"+&p)o'R)F4FZ7$$\"+qz;0%)F4FZ7$$\"+Xs k8%)F4F(7$$\"+?l7A%)F4F27$$\"++egI%)F4FZ7$$\"+v]3R%)F4F(7$$\"+]VcZ%)F4 F(7$$\"+b9[\"[)F4F(7$$\"+g&)R:&)F4F(7$$\"+5rNK&)F4F(7$$\"+lcJ\\&)F4F(7 $$\"+S\\zd&)F4F(7$$\"+?UFm&)F4F(7$$\"+&\\`Zd)F4Fdw7$$\"+qFB$e)F4Fa]l7$ $\"+X?r\"f)F4F27$$\"+?8>+')F4FZ7$$\"++1n3')F4FZ7$$\"+v)\\rh)F4FZ7$$\"+ ]\"Hci)F4F27$$\"+D%3Tj)F4F(7$$\"++xeU')F4Fdw7$$\"+xp1^')F4F(7$$\"+g/ve ')F4F(7$$\"+XRVm')F4Fiv7$$\"+Iu6u')F4F(7$$\"+:4!=o)F4F(7$$\"++W[*o)F4F (7$$\"+!)y;(p)F4FZ7$$\"+l8&[q)F4Fdw7$$\"+][`7()F4F27$$\"+N$=-s)F4F(7$$ \"+?=!zs)F4F27$$\"+0`eN()F4Fiv7$$\"+!zoKu)F4FZ7$$\"+vA&4v)F4FZ7$$\"+gd je()F4Fdw7$$\"+S#>jw)F4FZ7$$\"+DF+u()F4FZ7$$\"+5io\"y)F4F(7$$\"+!pp$*y )F4F(7$$\"+vJ0(z)F4F(7$$\"+gmt/))F4F(7$$\"+IO5?))F4F(7$$\"++1ZN))F4F(7 $$\"+&3aJ%))F4F(7$$\"+qv$3&))F4F(7$$\"+b5_e))F4FZ7$$\"+SX?m))F4F27$$\" +D!))Q())F4F(7$$\"+5:d\")))F4F27$$\"+&*\\D*)))F4F(7$$\"+w%Qp*))F4F(7$$ \"+o4ul\"*F4F(7$$\"+l??#H*F4F(7$$\"+lJm=%*F4F(7$$\"+I\\#pU*F4Fajm7$$\" ++n=N%*F4Fejm7$$\"+q%[MW*F4F(7$$\"+S-r^%*F4F]jm7$$\"+5?(*f%*F4Fajm7$$ \"+vPBo%*F4Fajm7$$\"+Sb\\w%*F4F(7$$\"+5tv%[*F4F(7$$\"+!3>I\\*F4F(7$$\" +X3G,&*F4F(7$$\"+5Ea4&*F4F(7$$\"+!Q/y^*F4F]jm7$$\"+:zKM&*F4F(7$$\"+]9& 3b*F4Fajm7$$\"+?K6f&*F4F(7$$\"+&)\\Pn&*F4Fajm7$$\"+]njv&*F4Fajm7$$\"+? &)*Qe*F4Fejm7$$\"+!Hg@f*F4F]jm7$$\"+g?U+'*F4F(7$$\"+IQo3'*F4Fajm7$$\"+ &fXph*F4Fajm7$$\"+lE**\\'*F4F(7$$\"+P(RIo*F4F]jm7$$\"+Dr6\"p*F4F(7$$\" +:X>*p*F4Fajm7$$\"++>F2(*F4F\\[n7$$\"+!H\\`r*F4F]jm7$$\"+qS]J(*F4Fajm7 $$\"+X)ewu*F4Fejm7$$\"++%o*z(*F4F]jm7$$\"+]zF7)*F4Fc[n7$$\"++veW)*F4F( 7$$\"+bq*o()*F4F\\[n7$$\"+5m?4**F4Fejm7$$\"+gh^T**F4Fajm7$$\"+Qm\"4+\" !\")F]jm7$$\"+f;o25Fc\\sFc[n7$$\"+qT165Fc\\sF]jm7$$\"+!oYW,\"Fc\\sF(7$ $\"+3BH:5Fc\\sFejm7$$\"+Oz8;5Fc\\sF\\[n7$$\"+kN)p,\"Fc\\sFajm7$$\"+\"> Hy,\"Fc\\sFajm7$$\"+=[n=5Fc\\sF(7$$\"+Y/_>5Fc\\sFajm7$$\"+ugO?5Fc\\sF] jm7$$\"+-<@@5Fc\\sF]jm7$$\"+Uh-A5Fc\\sFejm7$$\"+#eSG-\"Fc\\sFajm7$$\"+ A]lB5Fc\\sFajm7$$\"+i%pW-\"Fc\\sFajm7$$\"+U$)4E5Fc\\sF(7$$\"+AssF5Fc\\ sF]jm7$$\"+#)\\)4.\"Fc\\sF(7$$\"+UFCM5Fc\\sFejm7$$\"+i#e2/\"Fc\\sFajm7 $$\"+\"yts/\"Fc\\sF(7$$\"+Y&R*[5Fc\\sF(7$$\"+6`g]5Fc\\sF(7$$\"+%>Q90\" Fc\\sF(7$$\"+w5F_5Fc\\sF]jm7$$\"+eR5`5Fc\\sFajm7$$\"+To$R0\"Fc\\sF]jm7 $$\"+C(pZ0\"Fc\\sF(7$$\"+1Egb5Fc\\sF(7$$\"+)[Nk0\"Fc\\sF(7$$\"+r$os0\" Fc\\sF(7$$\"+OT$*e5Fc\\sF(7$$\"+,**fg5Fc\\sF(7$$\"+%yK91\"Fc\\sF]jm7$$ \"+mcEi5Fc\\sF(7$$\"+[&)4j5Fc\\sFajm7$$\"+J9$R1\"Fc\\sFajm7$$\"+'>(fl5 Fc\\sFajm7$$\"+hHEn5Fc\\sFajm7$$\"+We4o5Fc\\sF]jm7$$\"+E(G*o5Fc\\sF(7$ $\"+3;wp5Fc\\sF(7$$\"+\"\\%fq5Fc\\sF(7$$\"+utUr5Fc\\sF(7$$\"+c-Es5Fc\\ sF(7$$\"+QJ4t5Fc\\sFajm7$$\"+@g#R2\"Fc\\sFajm7$$\"+3R`!3\"Fc\\sFajm7$$ \"+%zTr3\"Fc\\sFajm7$$\"+!ynz3\"Fc\\sF(7$$\"+mPz)3\"Fc\\sF(7$$\"+_(>'* 3\"Fc\\sF(7$$\"+PdW!4\"Fc\\sFajm7$$\"+APcQ6Fc\\sF(7$$\"+9OVR6Fc\\sFajm7$$\"+3NIS6Fc\\s F(7$$\"+-M8H9\"Fc\\sF(7$$\"+%3 $yV6Fc\\sF(7$$\"+yHlW6Fc\\sF(7$$\"+sG_X6Fc\\sF]jm7$$\"+mFRY6Fc\\sFajm7 $$\"+gEEZ6Fc\\sF(7$$\"+aD8[6Fc\\sFajm7$$\"+[C+\\6Fc\\sF]jm7$$\"+UB()\\ 6Fc\\sFajm7$$\"+OAu]6Fc\\sFajm7$$\"+I@h^6Fc\\sFajm7$$\"+D?[_6Fc\\sF(7$ $\"+7\"QS:\"Fc\\sF(7$$\"++Ufb6Fc\\sF(7$$\"+WAPc6Fc\\sF(7$$\"+(G]r:\"Fc \\sF(7$$\"+I$Gz:\"Fc\\sF]jm7$$\"+ujqe6Fc\\sF]jm7$$\"+\\&==;\"Fc\\sF]jm 7$$\"+C2$\\;\"Fc\\sF]jm7$$\"+t]:r6Fc\\sF(7$$\"+A%zt<\"Fc\\sFajm7$$\"+O &Q!z6Fc\\sFajm7$$\"+]wp!=\"Fc\\sFajm7$$\"+2s_\"=\"Fc\\sFajm7$$\"+knN#= \"Fc\\sFajm7$$\"+?j=$=\"Fc\\sFajm7$$\"+xe,%=\"Fc\\sF(7$$\"+/TL(=\"Fc\\ sFejm7$$\"+KBl!>\"Fc\\sF\\[n7$$\"+*)=[\">\"Fc\\sF\\[n7$$\"+Y9J#>\"Fc\\ sF\\[n7$$\"+-59$>\"Fc\\sF]jm7$$\"+f0(R>\"Fc\\sFejm7$$\"+;,![>\"Fc\\sFc [n7$$\"+s'Hc>\"Fc\\sF\\[n7$$\"+H#fk>\"Fc\\sF\\[n7$$\"+'y)G(>\"Fc\\sF\\ ]n7$$\"+V$=\")>\"Fc\\sFa^n7$$\"++z%*)>\"Fc\\sFejm7$$\"+dux*>\"Fc\\sFaj m7$$\"+9qg+7Fc\\sF]jm7$$\"+rlV,7Fc\\sFc[n7$$\"+GhE-7Fc\\sF\\[n7$$\"+%o &4.7Fc\\sF\\[n7$$\"+T_#R?\"Fc\\s$!\"%FM7$$\"+vrF57Fc\\sF(7$$\"+4\"Hm@ \"Fc\\sFejm7$$\"+w]!)>7Fc\\sFajm7$$\"+V5)HA\"Fc\\sFc[n7$$\"+E!pXA\"Fc \\sFejm7$$\"+5q:E7Fc\\sFa^n7$$\"+%*\\uF7Fc\\sFajm7$$\"+xHLH7Fc\\sF(7$$ \"+Ii=I7Fc\\sF]jm7$$\"+#[R5B\"Fc\\sF\\[n7$$\"+NF*=B\"Fc\\sF(7$$\"+))fu K7Fc\\sFajm7$$\"+S#*fL7Fc\\sFc[n7$$\"+$\\_WB\"Fc\\sF(7$$\"+YdIN7Fc\\sF ejm7$$\"+)**ehB\"Fc\\sFajm7$$\"+3?dR7Fc\\sF(7$$\"+=])HC\"Fc\\sF]jm7$$ \"+q#QQC\"Fc\\sF(7$$\"+B:pW7Fc\\sF(7$$\"+wZaX7Fc\\sF(7$$\"+G!)RY7Fc\\s Fc[n7$$\"+!G^sC\"Fc\\sF(7$$\"+LX5[7Fc\\sF(7$$\"+'yd*[7Fc\\sF(7$$\"+Q5 \")\\7Fc\\sF(7$$\"+[SA`7Fc\\sF]jm7$$\"+fqjc7Fc\\sF`]n-%'COLOURG6&%$RGB GF(F($\"*++++\"Fc\\s-%+AXESLABELSG6$Q\"x6\"Q!Fc^u-%%VIEWG6$;F($\"+iqjc 7Fc\\s%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 136 "The solution has been constructed in such a way that up \+ to a point it will produce more accurate values when a higher precisio n is used." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 66 "evalf[15](plot('gn1'(x)-g(x),x=0..4*Pi,color=blue,n umpoints=100));" }}{PARA 13 "" 1 "" {GLPLOT2D 682 189 189 {PLOTDATA 2 "6&-%'CURVESG6#7hel7$$\"\"!F)F(7$$\"0\"*)\\.R0G8!#:$\"\"\"!#97$$\"0+X& ya\\s9F-$\"#eF07$$\"05\"f`q$ph\"F-$\"#$)F07$$\"0?P'G'y8w\"F-$\"#nF07$$ \"0I$o.-#e!>F-$\"#^F07$$\"0SH(y#F-$\"#eY3GF-$\"#OF 07$$\"0%RIxa!4(HF-$F-F07$$\"0-;^8XL8$F-$!#UF07$$\"0=S2XC#eMF-$\"#]F07$ $\"0Nkjw.Jy$F-$\"#\")F07$$\"0MzHfO,6%F-F47$$\"0K%f>%prV%F-$\"#FF07$$\" 0I4iC-Uw%F-$\"#=F07$$\"0HCG2N74&F-Ffn7$$\"0l+&pNr;aF-F(7$$\"0+xh1#>UdF -$\"\"%F07$$\"0N`Gcqw1'F-$\"#IF07$$\"0rH&f!\\JR'F-$\"#LF07$$\"0+j1_pm* pF-Fer7$$\"0G'z\")**=+wF-$\"#>F07$$\"0N8>AXE\"zF-$!#\")F07$$\"0SI?Y+^A )F-$!$X\"F07$$\"0XZ@qbv`)F-$!$+\"F07$$\"0_kA%4,]))F-$!#KF07$$\"0&\\Tq< e6!*F-Fft7$$\"0Sl&)f_J<*F-$!#eF07$$\"0&erEMsM$*F-Fat7$$\"0Im[D%H'\\*F- $!$^\"F07$$\"0v;I3lyl*F-$!$*=F07$$\"0?n6\"fV>)*F-$!$5#F07$$\"0l<$Rn+\" )**F-$!$3#F07$$\"0\"oucxD95F0$!$#>F07$$\"0!zV!Hok/\"F0$!$F\"F07$$\"0+H T#)y'y5F0$!#')F07$$\"0bu44%y%4\"F0Fgs7$$\"05?yN*)36\"F0Fgs7$$\"0klYi%* p7\"F0$!#oF07$$\"0>6:*)*4V6F0$!#SF07$$\"0w]!Qhmf6F0F(7$$\"0M!f%QKi<\"F 0$\"#AF07$$\"0#*H6j)z#>\"F0$\"#DF07$$\"0\\pw([O47F0$\"#?F07$$\"0k[2P( \\U7F0Feq7$$\"0zFQ')HcF\"F0$\"#8F07$$\"0\"[q*4'*RL\"F0F\\y7$$\"0$=eNBO #R\"F0F^z7$$\"08m2XvP_\"F0FM7$$\"0U\"GGOwc:F0Fbs7$$\"0r'z0=v*e\"F0Fay7 $$\"0+7L)*RFi\"F0F`q7$$\"0HF3;Gdl\"F0$\"#:F07$$\"0gD;FB;n\"F0$!\"(F07$ $\"0#RU#Q=vo\"F0$!#IF07$$\"0CAK\\8Mq\"F0F^p7$$\"0c?Sg3$>F0$!#(*F07$$\"0T60N=q'>F0$!#bF07$$\"0SD 'oeM,?F0$!#MF07$$\"0SRnQtc.#F0$!#GF07$$\"0#*HtH`Z1#F0$\"#6F07$$\"0W?z? LQ4#F0$\"#gF07$$\"0q:K;t$3@F0$\"#mF07$$\"0'4^=J\"H7#F0$\"#iF07$$\"0feh 4$=I@F0$\"#fF07$$\"0A1Q2`u8#F0F47$$\"0&QX^IsW@F0$\"#XF07$$\"0[,\"HI*>: #F0$\"#@F07$$\"0/:usY'>AF0$!$O%F07$$\"0fGdU+tG#F0$!$Z&F07$$\"0Nr*=HC78ff(pDF0$\"%,6F07$$\"03%=m3S&e#F0$\"%y5F07$$\" 0)f0T@/,EF0$\"%l5F07$$\"0x*z!pCBj#F0$\"%16F07$$\"0cV0C2Om#F0$\"%s6F07$ $\"0!\\**ps#*zEF0$\"%c6F07$$\"0CY%*HZip#F0$\"%E6F07$$\"0\"><9tS/FF0$\" %D6F07$$\"0e(*)Gtc7FF0$\"%Q6F07$$\"0CBOMF2s#F0$\"%m6F07$$\"0\"*[$et))G FF0$\"%17F07$$\"0C+yQ2_u#F0$\"%(G\"F07$$\"0e^sTF:w#F0$\"%T8F07$$\"0#Hq Yu%yx#F0$\"%`8F07$$\"0EahZnTz#F0$\"%b8F07$$\"0c]$R79CGF0$\"%z8F07$$\"0 (oa-]6aGF0$\"%n8F07$$\"0%fMV%3;'GF0$\"%w8F07$$\"0-XT)=5pGF0$\"%&Q\"F07 $$\"05W\\K&fwGF0$\"%/9F07$$\"0=Vdw)3%)GF0$\"%[NUHF0$\"$T&F07$$\"0Xh=G$RYHF0$\"$>$F07$$\"0qwfiM/&HF0$\"$+#F 07$$\"0%>4qfZaHF0$\"$'>F07$$\"0>2UJ<&eHF0$\"$/$F07$$\"0WA$e'eD'HF0$\"$ A&F07$$\"0oPC++m'HF0$\"$T)F07$$\"0$HbY8kqHF0$\"%S7F07$$\"0=o1p#ouHF0$ \"%,IF0$\"%(3 &F07$$\"07^+#)yJ-$F0$\"%(*\\F07$$\"0OmT;?s-$F0$\"%h[F07$$\"0'oR_GINIF0 $\"%CXF07$$\"0NF1a&QVIF0$\"%*=%F07$$\"0-uN#oF-7$$\"0$H`E&\\p?$F0$\"&p*>F-7$$\"05l)[K=OKF0$\"& R5#F-7$$\"0>J+6+3D$F0$\"&N.#F-7$$\"0G(>rpTlKF0$\"&mi\"F-7$$\"0K!y,assK F0$\"&v\">F-7$$\"0OjB$Q.!G$F0$\"&%GCF-7$$\"0SYHEUtG$F0$\"&1'GF-7$$\"0X HNp]YH$F0$\"&g+$F-7$$\"0#3./tV5LF0$\"&)[CF-7$$\"0?KX\"RAELF0$\"&.,#F-7 $$\"0dL]_5?M$F0$\"&iE#F-7$$\"0%\\`NrzdLF0$\"&a_#F-7$$\"0JOgu$etLF0$\"& r&GF-7$$\"0oPlNq$*Q$F0$\"&n=$F-7$$\"00Rq'p:0MF0$\"&'zKF-7$$\"0USvdV4U$ F0$\"&>J$F-7$$\"0:yU!=c`MF0$\"&()\\$F-7$$\"0)e,J+='[$F0$\"&'\\NF-7$$\" 05e$4tD!\\$F0$\"&m^$F-7$$\"0J+xeMV\\$F0$\"&\"HNF-7$$\"0_Ug'=T)\\$F0$\" &5f$F-7$$\"0u%QW\"*[-NF0$\"&\"oOF-7$$\"0'psAkc1NF0$\"&nr$F-7$$\"0EVN F0$\"&)GNF-7$$\"07\\h?Rta$F0$\"&``$F-7$$\"0L\"\\%[;9b$F0$\"&$QNF-7$$\" 0%p6q[rk$F0$\"&z^$F-7$$\"0:'\\p(e!zOF0$\"&=R$F-7$$\"0 B*[1!43u$F0$\"&![IF-7$$\"0J#[V#fD!QF0$\"&Nr#F-7$$\"0%f``B7rQF0$\"&/K#F -7$$\"0c*ejaoRRF0$\"&%y?F-7$$\"0%4Hr%**G1%F0$\"&Fk\"F-7$$\"0_:SscW>%F0 $\"&(=8F-7$$\"0OO#[rm8VF0$\"&q6\"F-7$$\"0,4&Hc*RW%F0$\"%&***F-7$$\"0wz :55`]%F0$\"%m&*F-7$$\"0_]OdCmc%F0$\"%j#*F-7$$\"0`)y=-n)f%F0$\"%r\"*F-7 $$\"0aER'erIYF0$\"%s!*F-7$$\"0ak!4:wiYF0$\"%?!*F-7$$\"0b-U:2[p%F0$\"%= !*F-7$$\"0gN(Hw8EZF0$\"%_))F-7$$\"0mo_5ouv%F0$\"%$p)F-7$$\"0r,3e)z)y%F 0$\"%:()F-7$$\"0wMj0H,#[F0$\"%u()F-7$$\"0F')\\EHd)[F0$\"%$**)F-7$$\"0y POZH8&\\F0$\"%@$*F-7$$\"0!*Q8F5X,&F0$\"%t(*F-7$$\"02S!p5px]F0$\"&F.\"F -7$$\"0_[609p?&F0$\"&o?\"F-7$$\"0%=s,q1N`F0$\"&D[\"F-7$$\"0:[QDEGX&F0$ \"&\"e=F-7$$\"0o4fk\"z(e&F0$\"&5Y#F-7$$\"0k.:I1&3dF0$\"&S%HF-7$$\"0&ez ,)fGx&F0$\"&IA$F-7$$\"0-)3-L@PeF0$\"&vT$F-7$$\"0&=.fH1TeF0$\"&%[MF-7$$ \"0qvfh7\\%eF0$\"&*oMF-7$$\"0]>HFi([eF0$\"&ZZ$F-7$$\"0Nj)H>h_eF0$\"&6Z $F-7$$\"0+^PC6.'eF0$\"&(fMF-7$$\"0lQwb5!oeF0$\"&%fMF-7$$\"0&RT&=4M)eF0 $\"&$GMF-7$$\"0D*=8y!))*eF0$\"&ZR$F-7$$\"0&)R(o]gHfF0$\"&!)G$F-7$$\"0 \\!HCBSgfF0$\"&mB$F-7$$\"0kB=!z=(4'F0$\"&ln#F-7$$\"0VR7;Mc@'F0$\"&W7#F -7$$\"0+yJ%H&GG'F0$\"&([>F-7$$\"0f;^sr+N'F0$\"%o.+lEkF0$\"%$f\"F07$$\"0g7)ec'>W' F0$\"%V:F07$$\"0gGWJ\"GdkF0$\"%C>F07$$\"0gW+(pfskF0$\"%qCF07$$\"0q<,?& ywkF0$\"%7DF07$$\"0!3>IM(4['F0$\"%)[#F07$$\"0!REg;;&['F0$\"%)R#F07$$\" 0+P.*)\\$*['F0$\"%[AF07$$\"0?$[]js(\\'F0$\"%@=F07$$\"0SH1\"G51lF0$\"%A 8F07$$\"0gv2FzW^'F0$\"$\"))F07$$\"0!=#4tbG_'F0$\"$*fF07$$\"0!\\*4'R/Fl F0$\"$R&F07$$\"0+o5>K7`'F0$\"$O&F07$$\"05T6U?a`'F0$\"$\"fF07$$\"0:97l3 'RlF0$\"$+(F07$$\"0Ig86&)za'F0$\"%_5F07$$\"0]1:dhjb'F0$\"%@:F07$$\"0q_ ;.QZc'F0$\"%C?F07$$\"0!*)z\"\\9Jd'F0$\"%wCF07$$\"05X>&4\\\"e'F0$\"%:GF 07$$\"0I\"47u')*e'F0$\"%4IF07$$\"0Sk@kbSf'F0$\"%]IF07$$\"0]PA(QC)f'F0$ \"%bIF07$$\"0g5B5KCg'F0$\"%KIF07$$\"0n$QK.i1mF0$\"%\")HF07$$\"0]Mj?Ibj 'F0$\"%hCF07$$\"0I&G!3SWm'F0$\"%'G#F07$$\"05OU&*\\Lp'F0$\"%h;F07$$\"0* o=G)fAs'F0$\"%L9F07$$\"0vv=x4\")y'F0$\"%^8F07$$\"0gkbrfR&oF0$\"%58F07$ $\"0a7]Iv6)pF0$\"%-7F07$$\"0\\$f(y2$3rF0$\"%[5F07$$\"0!3:!=S;<(F0$\"$` *F07$$\"083Fds\\B(F0$\"$&*)F07$$\"0!f'Q(QRlsF0$\"$O*F07$$\"0lB]<:eH(F0 $\"$j*F07$$\"0S\"=wkBEtF0$\"$f*F07$$\"0=RtxdmN(F0$\"$v*F07$$\"0qQM*35t tF0$\"%,5F07$$\"0?Q&4Sa*Q(F0$\"%=5F07$$\"0qPc7()fS(F0$\"%@5F07$$\"0?P< CICU(F0$\"%55F07$$\"0?ORZ;`X(F0Fd`p7$$\"0DNhq-#)[(F0$\"$))*F07$$\"05v* pca>vF0$\"$()*F07$$\"0&\\\"Qj))3b(F0F`bp7$$\"0![l(fJAe(F0$\"$x*F07$$\" 0k%\\hXd8wF0Fe_p7$$\"0S*e[&[&zwF0Fj_p7$$\"0@%oND_XxF0$\"$i*F07$$\"0:D$ 3PQvxF0Fccp7$$\"00m4)[C0yF0$\"$m*F07$$\"0+2O01^$yF0$\"$k*F07$$\"0!zCEs '\\'yF0$\"$b*F07$$\"0]q\">$o9)yF0$\"$N*F07$$\"05$47%pz*yF0$\"$<*F07$$ \"0q:]]qW\"zF0$\"$=*F07$$\"0IQzfr4$zF0$\"$K*F07$$\"0]$y$ytR'zF0$\"$')* F07$$\"0qG'pf(p*zF0$\"%85F07$$\"0gKGJ'eG!)F0$\"$%)*F07$$\"0bOgl'>g!)F0 $\"$B*F07$$\"0]Qw#=+w!)F0$\"$'*)F07$$\"0]S#**p!=4)F0$\"$#))F07$$\"0XU3 <7w5)F0$\"$u)F07$$\"0VWCM*F07$$\"0:Kz 9%['=)F0$\"$\\*F07$$\"0+w1bM&4b\\#)F0$\"$\")*F 07$$\"0q/[r([#G)F0$\"%D5F07$$\"0b*=wWU:$)F0$\"%i5F07$$\"0+#)o&G*=L)F0$ \"%k5F07$$\"0SuvBh$[$)F0$\"%o5F07$$\"0&oE='H[O)F0$\"$***F07$$\"0Ff*)*z H\"Q)F0$\"$l)F07$$\"0gw(yfY'R)F0$\"$N(F07$$\"0&RfeRj6%)F0$\"$b'F07$$\" 0g-&[z@>%)F0$\"$Q'F07$$\"0I6%Q>!oU)F0$\"$W'F07$$\"0&*>$GfQM%)F0$\"$h'F 07$$\"0gG#=*p>W)F0$\"$%pF07$$\"0Djy(eIs%)F0$\"$z)F07$$\"0$z\\P=k-&)F0$ \"$!**F07$$\"0+>(4+rL&)F0$\"$I*F07$$\"05S>=yZc)F0$\"$-)F07$$\"0S&*\\AX Dd)F0$\"$x(F07$$\"0l]!oAJ!e)F0$\"$l(F07$$\"0!f56$z!)e)F0$\"$d(F07$$\"0 ?hTNYef)F0$\"$o(F07$$\"0vr-W!Q6')F0$\"$8)F07$$\"0K#QEX\"pi)F0$\"$(*)F0 7$$\"0?8QV?bp)F0$\"%>8F07$$\"02W7METw)F0$\"%b:F07$$\"0v?4PVi#))F0$\"%4 =F07$$\"0Z(f+/O))))F0$\"%#*=F07$$\"0c-m*HT:!*F0$\"%Z@F07$$\"00v4I:x/*F 0$\"%*>#F07$$\"0bZ`g<+3*F0$\"%GAF07$$\"00?(4*>B6*F0$\"%!o#F07$$\"0`#49 AiW\"*F0$\"%tFF07$$\"0gz*R_/_\"*F0$\"%9CF07$$\"0lmeEo%f\"*F0$\"%o?F07$ $\"0q`*F0$\"%BEF07$$\"05*=@ k+/#*F0$\"%FJF07$$\"0?wqWH9@*F0$\"%@OF07$$\"0DjHZ_)=#*F0$\"%OSF07$$\"0 I]))\\viA*F0$\"%DVF07$$\"0SPZ_)pL#*F0$\"%qWF07$$\"0]6ldW&[#*F0$\"%&R%F 07$$\"0l&GG1Rj#*F0$\"%@TF07$$\"0gD(Qg@z#*F0$\"%fRF07$$\"0gl\"\\9/&H*F0 $\"%6RF07$$\"0g0'fo'3J*F0$\"%COF07$$\"0bX+F#pE$*F0Fa\\m7$$\"0]D44V$e$* F0$\"%&>$F07$$\"0V0=\"R***Q*F0$\"%YLF07$$\"0X`tp8GX*F0$\"&Ll$F-7$$\"0Y ,H[Lc^*F0$\"&03%F-7$$\"0qPcLL)>&*F0$\"&B9%F-7$$\"0&RP)=LS_*F0$\"&6=%F- 7$$\"0?56/L#G&*F0$\"&A>%F-7$$\"0XYQ*GVK&*F0$\"&(zTF-7$$\"0&*=$*fK3a*F0 $\"&H7%F-7$$\"0X\"z/BB\\&*F0$\"&z4%F-7$$\"0XOdrJgc*F0$\"&FC%F-7$$\"0X \"oE6$Ge*F0$\"&!*R%F-7$$\"0Xr&[*Hkh*F0$\"&uv%F-7$$\"0[h/xG+l*F0$\"&B/& F-7$$\"0&R5!yF$4(*F0$\"&J]&F-7$$\"0QY(*yE'o(*F0$\"&l\"eF-7$$\"0+]L;OG! )*F0$\"&$pfF-7$$\"0g`p`Xq$)*F0$\"&z,'F-7$$\"0SbPA]T&)*F0$\"&u,'F-7$$\" 0?d0\"\\Dr)*F0$\"&I*fF-7$$\"0+ftff$)))*F0$\"&0'fF-7$$\"0!3;%Gka!**F0$ \"&&oeF-7$$\"0Ia'Gp?n**F0$\"&DZ&F-7$$\"0y9t&\\*G+\"!#8$\"&8#\\F-7$$\"0 #yDpS+45F^`r$\"&PT%F-7$$\"0'3?\"=8^,\"F^`r$\"&6\"RF-7$$\"0,5\"RCo@5F^` r$\"&aX$F-7$$\"0;>qp^#G5F^`r$\"&K,$F-7$$\"0qI*Gv%[.\"F^`r$\"&#pEF-7$$ \"0CU3OV9/\"F^`r$\"&\"yBF-7$$\"02o;#eW`5F^`r$\"&d*>F-7$$\"0m<>!>>m5F^` r$\"&3s\"F-7$$\"0.%\\I3jy5F^`r$\"&'o:F-7$$\"0l'R&zs`3\"F^`r$\"&`]\"F-7 $$\"0F*HgZ6#4\"F^`r$\"&=Z\"F-7$$\"0P`tfJ]4\"F^`r$\"&_Y\"F-7$$\"0Z2WV[z 4\"F^`r$\"&$f9F-7$$\"0dh9Fl35\"F^`r$\"&0Y\"F-7$$\"0n:&3@y.6F^`r$\"&yY \"F-7$$\"0]9>?Kr5\"F^`r$\"&(e9F-7$$\"0K8`H#[56F^`r$\"&CX\"F-7$$\"097() QKQ6\"F^`r$\"&)o9F-7$$\"0'46#[#=<6F^`r$\"&3\\\"F-7$$\"0?T*45[B6F^`r$\" &oa\"F-7$$\"0Vrx`z(H6F^`r$\"&uh\"F-7$$\"0!>h>\\DU6F^`r$\"&Z%=F-7$$\"0# =rD-ua6F^`r$\"&G>#F-7$$\"0anmL26;\"F^`r$\"&lW#F-7$$\"0FBwWuu;\"F^`r$\" &@t#F-7$$\"0qq&yMAu6F^`r$\"&x5$F-7$$\"08=&4D(4=\"F^`r$\"&sc$F-7$$\"0-4 +rgr=\"F^`r$\"&N-%F-7$$\"0#**\\5*[L>\"F^`r$\"&$fXF-7$$\"0@()*euX*>\"F^ `r$\"&V/&F-7$$\"0]uu+mb?\"F^`r$\"&L\\&F-7$$\"0)RPw4$)37F^`r$\"&zv&F-7$ $\"0Yt_%f477F^`r$\"&G#eF-7$$\"0?B(H%GP@\"F^`r$\"&9&eF-7$$\"0%H<94O:7F^ `r$\"&1%eF-7$$\"0oA')R$*p@\"F^`r$\"&$GeF-7$$\"0VsI)ei=7F^`r$\"&4!eF-7$ $\"0dndgT^A\"F^`r$\"&?[&F-7$$\"0ri%GtlJ7F^`r$\"&c6&F-7$$\"0V9ld0vB\"F^ `r$\"&[m%F-7$$\"0:mX#QNV7F^`r$\"&k?%F-7$$\"0-,IW&**\\7F^`r$\"&\")z$F-7 $$\"0*eVhqjc7F^`r$\"&kU$F--%'COLOURG6&%$RGBGF(F($\"*++++\"!\")-%+AXESL ABELSG6$Q\"x6\"Q!Fc^s-%%VIEWG6$;F($\"0#fVhqjc7F^`r%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 123 "We can investiga te the error obtained by applying polynomial interpolation compared wi th using (partial) Runge-Kutta steps." }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 198 "de := diff(y(x),x)=3*y( x)*cos(x)/(1+3*y(x)^4);\nic := y(0)=1;\ngn2 := desolveRK(\{de,ic\},y(x ),x=0..4*Pi,method=rk89,output=rkstep);\nevalf[15](plot('gn2'(x)-g(x), x=0..4*Pi,color=magenta,numpoints=100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\"\"$\"\"\"F)F0-%$cosGF+F0,& F0F0*&F/F0)F)\"\"%F0F0!\"\"F0" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#ic G/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 715 153 153 {PLOTDATA 2 "6&-%'CURVESG6#7]v7$$\"\"!F)F(7$$\"0\"*)\\.R0G8!#:$\"\"\"! #97$$\"0pnQ]'e$[#F-$\"\"$F07$$\"0Nkjw.Jy$F-F47$$\"0HCG2N74&F-$\"#=F07$ $\"0rH&f!\\JR'F-$\"#:F07$$\"0G'z\")**=+wF-$\"#BF07$$\"0_kA%4,]))F-FF7$ $\"0\"oucxD95F0F<7$$\"0>6:*)*4V6F0$\"#?F07$$\"0zFQ')HcF\"F0$\"#@F07$$ \"0$=eNBO#R\"F0FV7$$\"08m2XvP_\"F0FQ7$$\"0HF3;Gdl\"F0$\"#CF07$$\"0#Q@Z !*)Gy\"F0$\"#IF07$$\"0U$G9LO)*=F0F`o7$$\"0T60N=q'>F0$\"#GF07$$\"0SRnQt c.#F0$\"#KF07$$\"0W?z?LQ4#F0$\"#XF07$$\"0[,\"HI*>:#F0$\"#hF07$$\"0/:us Y'>AF0$\"#lF07$$\"0fGdU+tG#F0F\\q7$$\"069AT&=ZBF0$\"#nF07$$\"0j*p)RqqS #F0$\"#qF07$$\"0#oTf?#*RCF0$\"#vF07$$\"0-M,stFZ#F0$\"#\")F07$$\"0@^3QD c]#F0$\"$0\"F07$$\"0So:/x%QDF0$\"$g\"F07$$\"0)f0T@/,EF0$\"$'fF07$$\"0c V0C2Om#F0$\"%L6F07$$\"0\"*[$et))GFF0$\"%&>\"F07$$\"0EahZnTz#F0$\"%p7F0 7$$\"0[R*GD19HF0$\"%d9F07$$\"0NF1a&QVIF0$\"%5F-7$$\"05l)[K=OKF0$\"&j5#F-7$$\"0XHNp]YH$F0$\"&rJ#F-7$$\"0?KX\"RAELF0 $\"&:W#F-7$$\"0%\\`NrzdLF0$\"&vd#F-7$$\"0oPlNq$*Q$F0$\"&!pIF-7$$\"0USv dV4U$F0$\"&%HLF-7$$\"0)e,J+='[$F0$\"&4f$F-7$$\"0L\"\\%[;9b$F0$\"&jp$F- 7$$\"0u$*piP_h$F0$\"&%F0$\"&]K\"F-7$$\"0OO#[rm8VF0$\"&.8\"F-7$$\"0,4&Hc*RW%F0$\" %%)**F-7$$\"0wz:55`]%F0$\"%i&*F-7$$\"0_]OdCmc%F0$\"%i#*F-7$$\"0aER'erI YF0$\"%%3*F-7$$\"0b-U:2[p%F0$\"%(**)F-7$$\"0mo_5ouv%F0$\"%;!*F-7$$\"0w Mj0H,#[F0$\"%W!*F-7$$\"0_g1;HH&[F0$\"%l))F-7$$\"0F')\\EHd)[F0$\"%-!*F- 7$$\"0-7$p$H&=\\F0$\"%q\"*F-7$$\"0yPOZH8&\\F0$\"%s$*F-7$$\"0!*Q8F5X,&F 0$\"%\\)*F-7$$\"02S!p5px]F0$\"&C/\"F-7$$\"0_[609p?&F0$\"&LA\"F-7$$\"0% =s,q1N`F0$\"&D\\\"F-7$$\"0:[QDEGX&F0$\"&Z&=F-7$$\"0!*y)\\*3._&F0$\"&c7 #F-7$$\"0o4fk\"z(e&F0$\"&lV#F-7$$\"0l1P(*[\"[cF0$\"&/v#F-7$$\"0k.:I1&3 dF0$\"&T-$F-7$$\"0&ez,)fGx&F0$\"&#GKF-7$$\"0-)3-L@PeF0$\"&!*Q$F-7$$\"0 lQwb5!oeF0$\"&3T$F-7$$\"0D*=8y!))*eF0$\"&?T$F-7$$\"0&)R(o]gHfF0$\"&5N$ F-7$$\"0\\!HCBSgfF0$\"&AC$F-7$$\"0kB=!z=(4'F0$\"&gn#F-7$$\"0VR7;Mc@'F0 $\"&`?#F-7$$\"0f;^sr+N'F0$\"%lM&4b\\#)F0$\"%;5F07$$\"0b*=wWU:$ )F0$\"%Z5F07$$\"0Ff*)*zH\"Q)F0$\"%!3\"F07$$\"0$z\\P=k-&)F0$\"%E6F07$$ \"05S>=yZc)F0$\"%b6F07$$\"0K#QEX\"pi)F0$\"%\">\"F07$$\"0?8QV?bp)F0$\"% R7F07$$\"02W7METw)F0$\"%\\8F07$$\"0Z(f+/O))))F0$\"%%)=F07$$\"0c-m*HT:! *F0$\"%$3#F07$$\"0`#49AiW\"*F0$\"%xBF07$$\"05*=@k+/#*F0$\"%NDF07$$\"0l &GG1Rj#*F0$\"%AFF07$$\"0bX+F#pE$*F0$\"%3IF07$$\"0V0=\"R***Q*F0$\"%SLF0 7$$\"0X`tp8GX*F0$\"&ym$F-7$$\"0Y,H[Lc^*F0$\"&!RSF-7$$\"0X\"oE6$Ge*F0$ \"&6^%F-7$$\"0[h/xG+l*F0$\"&!4]F-7$$\"0&R5!yF$4(*F0$\"&?]&F-7$$\"0QY(* yE'o(*F0$\"&_(eF-7$$\"0+]L;OG!)*F0$\"&>(fF-7$$\"0g`p`Xq$)*F0$\"&&GgF-7 $$\"0?d0\"\\Dr)*F0$\"&Q*fF-7$$\"0!3;%Gka!**F0$\"&d(eF-7$$\"0Ia'Gp?n**F 0$\"&d]&F-7$$\"0y9t&\\*G+\"!#8$\"&G)\\F-7$$\"0#yDpS+45F`cm$\"&7T%F-7$$ \"0'3?\"=8^,\"F`cm$\"&\")*QF-7$$\"0,5\"RCo@5F`cm$\"&iT$F-7$$\"0;>qp^#G 5F`cm$\"&p,$F-7$$\"0qI*Gv%[.\"F`cm$\"&Hn#F-7$$\"0CU3OV9/\"F`cm$\"&()Q# F-7$$\"0;b7fWu/\"F`cm$\"&i<#F-7$$\"02o;#eW`5F`cm$\"&w*>F-7$$\"0m<>!>>m 5F`cm$\"&Is\"F-7$$\"0.%\\I3jy5F`cm$\"&Qc\"F-7$$\"0l'R&zs`3\"F`cm$\"&'4 :F-7$$\"0F*HgZ6#4\"F`cm$\"&kZ\"F-7$$\"0P`tfJ]4\"F`cm$\"&fY\"F-7$$\"0Z2 WV[z4\"F`cm$\"&5Y\"F-7$$\"0dh9Fl35\"F`cm$\"&4Y\"F-7$$\"0n:&3@y.6F`cm$ \"&XY\"F-7$$\"0K8`H#[56F`cm$\"&m[\"F-7$$\"0'46#[#=<6F`cm$\"&d^\"F-7$$ \"0_oS6d(=6F`cm$\"&Z^\"F-7$$\"03EguJ.7\"F`cm$\"&y^\"F-7$$\"0k$)zP1>7\" F`cm$\"&J`\"F-7$$\"0?T*45[B6F`cm$\"&(\\:F-7$$\"0KcQFIm7\"F`cm$\"&pe\"F -7$$\"0Vrx`z(H6F`cm$\"&(H;F-7$$\"0!>h>\\DU6F`cm$\"&5&=F-7$$\"0#=rD-ua6 F`cm$\"&Q?#F-7$$\"0anmL26;\"F`cm$\"&_W#F-7$$\"0FBwWuu;\"F`cm$\"&ot#F-7 $$\"0qq&yMAu6F`cm$\"&J6$F-7$$\"08=&4D(4=\"F`cm$\"&\"F`cm$\"&&fXF-7$$\"0@()*euX*>\"F`cm$\"&j 2&F-7$$\"0]uu+mb?\"F`cm$\"&<^&F-7$$\"0)RPw4$)37F`cm$\"&Qo&F-7$$\"0Yt_% f477F`cm$\"&K#eF-7$$\"0?B(H%GP@\"F`cm$\"&t%eF-7$$\"0%H<94O:7F`cm$\"&5& eF-7$$\"0oA')R$*p@\"F`cm$\"&l$eF-7$$\"0VsI)ei=7F`cm$\"&D!eF-7$$\"0dndg T^A\"F`cm$\"&x\\&F-7$$\"0ri%GtlJ7F`cm$\"&*G]F-7$$\"0V9ld0vB\"F`cm$\"&+ m%F-7$$\"0:mX#QNV7F`cm$\"&oB%F-7$$\"0-,IW&**\\7F`cm$\"&!)z$F-7$$\"0*eV hqjc7F`cm$\"&uU$F--%'COLOURG6&%$RGBG$\"*++++\"!\")F(F]bn-%+AXESLABELSG 6$Q\"x6\"Q!Fdbn-%%VIEWG6$;F($\"0#fVhqjc7F`cm%(DEFAULTG" 1 2 0 1 10 0 2 6 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 205 "The next graph compares the two methods of interpolation in terms of their errors. The discrete points give the errors at the \+ interpolation points whose horizontal location is determined by extrac ting the " }{TEXT 298 1 "x" }{TEXT -1 38 " coordinates from a discrete solution." }}{PARA 0 "" 0 "" {TEXT -1 74 "The error curve for the pol ynomial interpolation obtained via the option \"" }{TEXT 262 15 "outpu t=rkinterp" }{TEXT -1 14 "\" is shown in " }{TEXT 261 4 "blue" }{TEXT -1 107 " while the error curve for interpolation obtained by performin g Runge-Kutta steps obtained via the option \"" }{TEXT 262 13 "output= rkstep" }{TEXT -1 15 "\" is shown in " }{TEXT 280 7 "magenta" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 588 "de := diff(y(x),x)=3*y(x)*cos(x)/(1+3*y(x)^4);\nic : = y(0)=1;\ngn1 := desolveRK(\{de,ic\},x=0..10.5,method=rk89,output=rki nterp):\ngn2 := desolveRK(\{de,ic\},x=0..10.5,method=rk89,output=rkste p):\npts := desolveRK(\{de,ic\},x=0..10.5,method=rk89,output=points): \npts2 := [seq([pts[i,1],evalf[18](gn2(pts[i,1])-g(pts[i,1]))],i=1..no ps(pts))]:\np1 := plot([pts2$3],style=point,symbol=[circle,diamond,cro ss],color=[black,coral$2]):\np2 := evalf[18](plot(['gn1'(x)-g(x),'gn2' (x)-g(x)],x=9.5..10.2,\n color=[blue,magenta],numpoints=10 0)):\nplots[display]([p1,p2],view=[9.5..10.2,3e-11..6.2e-11]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#deG/-%%diffG6$-%\"yG6#%\"xGF,,$**\" \"$\"\"\"F)F0-%$cosGF+F0,&F0F0*&F/F0)F)\"\"%F0F0!\"\"F0" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%#icG/-%\"yG6#\"\"!\"\"\"" }}{PARA 13 "" 1 "" {GLPLOT2D 674 289 289 {PLOTDATA 2 "6)-%'CURVESG6&7en7$$\"\"!F)F(7$$\"3 -+++++++5!#>$\"3G++++++]Z!#K7$$\"3y**************fF-$\"33++++++!=*F07$ $\"3)******H?swP#!#=$\"3q***********f>$!#J7$$\"38+++oXZUYF9$\"33+++++q \"z\"!#I7$$\"3K+++D+pMuF9$\"3%)**********zyAFB7$$\"3)*******ea$>?\"!#< $\"3#************43#FB7$$\"3.+++K2ZE;FK$\"3()***********[r#FB7$$\"3.++ +K2ZE@FK$\"3G+++++!>:'FB7$$\"3.+++K2ZEEFK$\"3)**********=35\"!#G7$$\"3 #)*******zmy'GFK$\"3%*********4S(Q\"Fgn7$$\"3?+++3>PBJFK$\"3/++++]!4x \"Fgn7$$\"3@+++2(H:C$FK$\"3%********f<:7#Fgn7$$\"39+++y/5#R$FK$\"33+++ +'f[>$Fgn7$$\"3))******Q#)\\yMFK$\"3-++++VymNFgn7$$\"3++++7k.pNFK$\"3D ++++jc@OFgn7$$\"3-+++Vk![l$FK$\"3-++++B\\yMFgn7$$\"3********y;8TPFK$\" 3%)********4EYIFgn7$$\"3>+++W2BHQFK$\"37++++j!*pDFgn7$$\"3;+++g^/]RFK$ \"3:++++!)fI?Fgn7$$\"3y*****z12\"oSFK$\"3')*******fVwi\"Fgn7$$\"3M+++n G\"R@%FK$\"3%********p!)eG\"Fgn7$$\"3W+++2pe,WFK$\"30++++#3`.\"Fgn7$$ \"3z******Rz))3YFK$\"3$***********)z8*!#H7$$\"33+++b67][FK$\"3Q******* *>`a))F^s7$$\"3#*******)Qf80&FK$\"3**********G]95Fgn7$$\"3.+++<[bO_FK$ \"3)*********y>u7Fgn7$$\"3k*****HWT+Q&FK$\"3%********f_xh\"Fgn7$$\"30+ ++[L4+bFK$\"3&)*******z$=T?Fgn7$$\"39+++Bz83cFK$\"35++++j=WDFgn7$$\"3t *****R%4J=dFK$\"3)********pv&**HFgn7$$\"38+++jRq+eFK$\"3$)*******\\KpJ $Fgn7$$\"3o******[F[$)eFK$\"3r*******4>'GMFgn7$$\"3%)*****>H5M'fFK$\"3 p*******4D^A$Fgn7$$\"3q*****RU#[agFK$\"3'*********GJnGFgn7$$\"3))***** RnO+:'FK$\"3;++++XobCFgn7$$\"3=+++#)*3()G'FK$\"37+++++kE>Fgn7$$\"3&)** ***4G=\\V'FK$\"35++++5Cw:Fgn7$$\"3#)*****H_5(>nFK$\"30++++q0O9Fgn7$$\" 3++++a\"ex(pFK$\"3$**********4]?\"Fgn7$$\"3<+++s$))yT(FK$\"3)********* f)H,\"Fgn7$$\"34+++^A%Q$yFK$\"3Y+++++]X'*F^s7$$\"34+++^A%QL)FK$\"3%*** ******4Hj5Fgn7$$\"34+++^A%Q$))FK$\"3;++++S>8=Fgn7$$\"3[+++:L>!4*FK$\"3 '*********z*=D#Fgn7$$\"3O*****pz&>W$*FK$\"3z********HjKJFgn7$$\"3m+++T MS#[*FK$\"3\")*******z8$GQFgn7$$\"37*****HO*[2'*FK$\"3#)*********3bn%F gn7$$\"3D+++$>w\\q*FK$\"3w*******zU(paFgn7$$\"3u*****f'*Hsz*FK$\"3#*** ******pWbfFgn7$$\"3%*******RCWw)*FK$\"3K++++.[!)fFgn7$$\"3G*****p&*G_*FK$\")\\CtT F97$$\"3giii5prC&*FK$\")mo%=%F97$$\"3!333=iQl_*FK$\")2\"4>%F97$$\"3**) *)*)HLg$G&*FK$\")F:#>%F97$$\"3lkk*eQt,`*FK$\")T\"*)=%F97$$\"3III!)Qk)> `*FK$\")6)==%F97$$\"3&ff4<\\*zL&*FK$\")%z=<%F97$$\"3ihhhWDhN&*FK$\")J% )fTF97$$\"3!zyy)3W(*Q&*FK$\")#=b8%F97$$\"39999tiLU&*FK$\")&4Q6%F97$$\" 3++++\"ywSa*FK$\")&)R0TF97$$\"3&eee))G'*FK$\")?# Rz%F97$$\"3====4BTF'*FK$\")%f`%[F97$$\"3JJJJ.S3M'*FK$\")\"\\4([F97$$\" 3====4RST'*FK$\")B]D\\F97$$\"3eddd!>u$['*FK$\")<[<]F97$$\"3)zzzz%pkb'* FK$\")bAB^F97$$\"3feee4cKi'*FK$\")ez&>&F97$$\"3QQQQ[%H&p'*FK$\")lyV_F9 7$$\"3HHHH7A,x'*FK$\")NU)G&F97$$\"3FFFF!)f_$o*FK$\")x^P`F97$$\"39999G5 c!p*FK$\")ZH&Q&F97$$\"3(ppp4#*Gyp*FK$\")C\"yT&F97$$\"3====O\"R\\q*FK$ \")JppaF97$$\"3++++N'==r*FK$\")ZW?bF97$$\"3_^^^XrX>(*FK$\")pJtbF97$$\" 3&\\\\\\po?js*FK$\")u`FcF97$$\"3UUUU#)*[Ot*FK$\")i?!o&F97$$\"3NPP([Cpp t*FK$\")[S'p&F97$$\"3KKKK2&*GS(*FK$\")I$pq&F97$$\"3qnnRu*FK$\")X`8 dF97$$\"3....b$\\vu*FK$\");?=dF97$$\"3+**)*[I['4v*FK$\")J>CdF97$$\"3& \\\\\\fI!Qa(*FK$\")SGMdF97$$\"3&HHH>Y]zv*FK$\")-L]dF97$$\"3\"444zh?:w* FK$\")u:rdF97$$\"3)zzzzd,&o(*FK$\")\"Gc\"eF97$$\"3@@@@'**4ex*FK$\")**= _eF97$$\"3gfffr)[Gy*FK$\")`v%)eF97$$\"3KKKKQr/!z*FK$\")AWHfF97$$\"3xww w*z&=(z*FK$\")GabfF97$$\"3CCCC)[XP!)*FK$\")%R5(fF97$$\"3]\\\\\\JOE6)*F K$\")Zj&)fF97$$\"3WWWW[z)z\")*FK$\")U;3gF97$$\"3:88j5Fd@)*FK$\")dP&>-'F97$$\"3ljjjZ&)eG)*FK$\")BUAgF97$$\"3YXXXA '>?$)*FK$\")zx?gF97$$\"3utttd\"R'R)*FK$\")&R\"=gF97$$\"3UUUU:rBY)*FK$ \")$z&>gF97$$\"3TTTTces`)*FK$\")!Qv,'F97$$\"3&[[[3.^0')*FK$\")*3&4gF97 $$\"31111*p;!o)*FK$\")@3**fF97$$\"399993$eW()*FK$\")^(f)fF97$$\"3(ppp* [Xz\"))*FK$\")S2pfF97$$\"3geeeghc$))*FK$\")vBofF97$$\"3????sxL&))*FK$ \")e,nfF97$$\"3!===QQ4r))*FK$\")S0kfF97$$\"3WVVV&*4)))))*FK$\")T`efF97 $$\"3XYY'R!>U#*)*FK$\")ajRfF97$$\"3]\\\\\\7G'f*)*FK$\")-`9fF97$$\"3:;; m%p!\\**)*FK$\")7)3*eF97$$\"3$GGGod=I!**FK$\").PueF97$$\"3vtt)><8Z!**F K$\")qbpeF97$$\"3lkk9nxS1**FK$\")=`meF97$$\"3bbbIiB53**FK$\")*e['eF97$ $\"3YYYYdpz4**FK$\")+(R'eF97$$\"3&ff4(f)G;\"**FK$\")B;jeF97$$\"3XXX&>w gM\"**FK$\")TvheF97$$\"3&\\\\*>kEH:**FK$\")p2feF97$$\"3WWWWmX7<**FK$\" )1kaeF97$$\"3IGGyPkh?**FK$\");cSeF97$$\"377774$3T#**FK$\")$Q)>eF97$$\" 3WVVVp$e9$**FK$\")$>xw&F97$$\"3'fffR%>6Q**FK$\")IgCdF97$$\"3PPPP*Qla%* *FK$\"),krcF97$$\"3qppp3(3D&**FK$\")'3Mh&F97$$\"3QQQQ%)[`f**FK$\"):%Qc &F97$$\"37777_P(o'**FK$\")\\GwaF97$$\"3:<aF97$$\"3IIII^kY#)**FK$\")Iu8aF97$$\"3&HHH4FxV)**FK$\")zA/aF97 $$\"3bbbb!4)G')**FK$\")$R(*Q&F97$$\"3====5*)>))**FK$\")6.q`F97$$\"3\"3 33GF>^***FK$\")!4TE&F97$$\"3[[[)Rm>-+\"F^\\l$\")#H]9&F97$$\"3GGG)RTR4+ \"F^\\l$\")SF97$$\"3#===_\"RK95F^\\l$\")F hgRF97$$\"3baaClK.:5F^\\l$\")c*f\"RF97$$\"3444Rk^y:5F^\\l$\")q%\\'QF97 $$\"3)yyyAeuk,\"F^\\l$\")\"*=(z$F97$$\"3'fffi7br,\"F^\\l$\")[UAPF97$$ \"3ZZZd;E)y,\"F^\\l$\")S6cOF97$$\"3rqq?B&3'=5F^\\l$\")>D9OF97$$\"3srr^ n+E>5F^\\l$\")$**3f$F97$$\"$-\"Fh_l$\")!oVc$F9-Ff]l6&Fh]lF(F(Fe^l-F$6$ 7eq7$Ff_l$\"),yPRF97$F\\`l$\")**>&)RF97$Fa`l$\")K8FSF97$F[al$\")\"Q]2% F97$F_bl$\")M0CTF97$Fccl$\")dhtTF97$F]dl$\")tC?UF97$Fael$\")g>pUF97$Fe fl$\")'z/K%F97$Fjfl$\")4bF97$Fh]m$\")WDubF97$F]^m$\")uz@cF97$Fb^m$ \")z*3n&F97$F\\_m$\")Lu8dF97$Ff_m$\")\"3'edF97$F``m$\")*f()z&F97$Fj`m$ \")^PQeF97$F_am$\")JXueF97$Fdam$\")tm3fF97$Fiam$\"):XOfF97$$\"3&fff\\+ [ky*FK$\")yaZfF97$F^bm$\")tTbfF97$$\"3XVVo.=$=z*FK$\")UsdfF97$$\"3baa/ pkh$z*FK$\")XpefF97$$\"3lllSM6S&z*FK$\")'o!efF97$Fcbm$\")l`bfF97$$\"3] ]]+WcY+)*FK$\")XElfF97$Fhbm$\")s([(fF97$F]cm$\"),6%*fF97$Fbcm$\")$>z+' F97$F\\dm$\")^,>gF97$Ffdm$\")<0EgF97$F[em$\")EnHgF97$F`em$\")%e\"HgF97 $Feem$\")UJCgF97$Fjem$\")pv:gF97$F_fm$\")Sq,gF97$Fdfm$\")2$f)fF97$Fifm $\")7^lfF97$F]hm$\")4_UfF97$Fghm$\")1.;fF97$Faim$\")KE')eF97$Fejm$\") \">Y&eF97$Fi[n$\")NA_F97$Fhan$\")WRd^F97$F]bn$\")!o$*4&F97$Fbbn$\")oSO]F97$Fgbn $\")u;s\\F97$F\\cn$\")(>***[F97$Facn$\")3eI[F97$Ffcn$\")C][ZF97$F[dn$ \")QT(o%F97$F`dn$\")U3FYF97$Fedn$\")hUiXF97$Fjdn$\")(>y\\%F97$F_en$\") oPRWF97$Fden$\")(HxP%F97$Fien$\")4.=VF97$F^fn$\")D(QD%F97$Fcfn$\")l$)) >%F97$Fhfn$\")g:OTF97$F]gn$\")1qxSF97$Fbgn$\")$z,-%F97$Fggn$\")/2hRF97 $F\\hn$\")on/RF97$Fahn$\")yvXQF97$Ffhn$\")#GDz$F97$F[in$\")FuSPF97$F`i n$\")5B'o$F97$Fein$\"),sKOF97$Fjin$\")$\\ae$F97$F_jn$\")okKNF9-Ff]l6&F h]lFe^lF(Fe^l-%+AXESLABELSG6%Q!6\"Fb_p-%%FONTG6#%(DEFAULTG-%%VIEWG6$;F f_lF_jn;$\"\"$!#6$\"#i!#7" 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" }}}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{MARK "4 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }