{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 "Hyperlink" -1 17 "" 0 1 0 128 128 1 2 0 1 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 "Blue Emphasis" -1 256 "Times" 0 0 0 0 255 1 0 1 0 0 0 0 0 0 0 1 }{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 "Dark Red Emphasis" -1 261 "Times" 1 12 128 0 0 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 262 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 263 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 264 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 265 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 266 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 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 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "Grey Emphasis" -1 269 "Times" 1 12 96 52 84 1 0 1 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 "Hea ding 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 "Times" 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 "Text Output" -1 6 1 {CSTYLE "" -1 -1 "Co urier" 1 10 0 0 255 1 2 2 2 2 2 1 2 1 3 1 }1 1 0 0 0 0 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 Out put" -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 "Normal" -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 43 "Procedures for evaluating the sin e function" }}{PARA 0 "" 0 "" {TEXT -1 37 "by Peter Stone, Nanaimo, B. C., Canada" }}{PARA 0 "" 0 "" {TEXT -1 19 "Version: 25.3.2007" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 56 "load interpolation and function approxi mation procedures" }}{PARA 0 "" 0 "" {TEXT -1 17 "The Maple m-file " } {TEXT 269 10 "fcnapprx.m" }{TEXT -1 37 " contains the code for the pro cedure " }{TEXT 0 10 "chebseries" }{TEXT -1 25 " used in this workshee t. " }}{PARA 0 "" 0 "" {TEXT -1 123 "It can be read into a Maple sessi on by a command similar to the one that follows, where the file path g ives its location. " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "read \"K:\\\\Maple/procdrs/fcnapprx.m\";" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}} {SECT 1 {PARA 4 "" 0 "" {TEXT -1 60 "A fixed precision procedure to ev aluate the sine function " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 90 "In this section we construct a f ixed precision version of the sine function which can use " }{TEXT 259 34 "hardware floating point arithmetic" }{TEXT -1 1 "." }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 31 "A polynomial approximation for " } {XPPEDIT 18 0 "sin*x" "6#*&%$sinG\"\"\"%\"xGF%" }{TEXT -1 1 " " }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 69 "When working with fixed precision we can replace the Maclaurin \+ series" }}{PARA 257 "" 0 "" {TEXT -1 1 " " }{XPPEDIT 18 0 "sin*x = x-x ^3/3!+x^5/5!-x^7/7!+` . . . `;" "6#/*&%$sinG\"\"\"%\"xGF&,,F'F&*&F'\" \"$-%*factorialG6#F*!\"\"F.*&F'\"\"&-F,6#F0F.F&*&F'\"\"(-F,6#F4F.F.%(~ .~.~.~GF&" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 41 "by a fixed p olynomial which approximates " }{XPPEDIT 18 0 "sin*x" "6#*&%$sinG\"\" \"%\"xGF%" }{TEXT -1 17 " on the interval " }{XPPEDIT 18 0 "[-Pi/2, Pi /2];" "6#7$,$*&%#PiG\"\"\"\"\"#!\"\"F)*&F&F'F(F)" }{TEXT -1 1 "." }} {PARA 0 "" 0 "" {TEXT -1 22 "We choose a polynomial" }}{PARA 257 "" 0 "" {TEXT -1 2 " " }{XPPEDIT 18 0 "p(x)=a[0]*x+a[1]*x^3+a[2]*x^5+ ` . \+ . . `+a[n]*x^(2*n+1)" "6#/-%\"pG6#%\"xG,,*&&%\"aG6#\"\"!\"\"\"F'F.F.*& &F+6#F.F.*$F'\"\"$F.F.*&&F+6#\"\"#F.*$F'\"\"&F.F.%(~.~.~.~GF.*&&F+6#% \"nGF.)F',&*&F7F.F>F.F.F.F.F.F." }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 143 "so that the degree is as small as possible subject to th e condition that the theoretical error does not exceed half a unit in \+ the last decimal." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 71 "Such a polynomial approximation can be constructed using \+ the procedure " }{TEXT 0 10 "chebseries" }{TEXT -1 50 ", which can be \+ loaded from the relevant worksheet." }}{PARA 0 "" 0 "" {TEXT -1 6 "Sin ce " }{XPPEDIT 18 0 "sin*x" "6#*&%$sinG\"\"\"%\"xGF%" }{TEXT -1 69 " i s an odd function, it is better to find a polynomial approximation " } {XPPEDIT 18 0 "q(x)" "6#-%\"qG6#%\"xG" }{TEXT -1 19 " for the function " }{XPPEDIT 18 0 "sin*x/x;" "6#*(%$sinG\"\"\"%\"xGF%F&!\"\"" }{TEXT -1 32 " , and then take the polynomial " }{XPPEDIT 18 0 "p(x) = x*q(x) ;" "6#/-%\"pG6#%\"xG*&F'\"\"\"-%\"qG6#F'F)" }{TEXT -1 16 " to approxim ate " }{XPPEDIT 18 0 "sin*x" "6#*&%$sinG\"\"\"%\"xGF%" }{TEXT -1 2 ". \n" }}{PARA 0 "" 0 "" {TEXT -1 10 "Note that " }{XPPEDIT 18 0 "Limit(s in*x/x,x = 0) = 1;" "6#/-%&LimitG6$*(%$sinG\"\"\"%\"xGF)F*!\"\"/F*\"\" !F)" }{TEXT -1 38 ", so the function we approximate is " }{XPPEDIT 18 0 "g(x) = PIECEWISE([sin*x/x, x <> 0],[1, x = 0]);" "6#/-%\"gG6#%\" xG-%*PIECEWISEG6$7$*(%$sinG\"\"\"F'F.F'!\"\"0F'\"\"!7$F./F'F1" }{TEXT -1 2 " ." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 68 "Maple's plot command manages to plot the graph using the expressio n " }{XPPEDIT 18 0 "sin*x/x;" "6#*(%$sinG\"\"\"%\"xGF%F&!\"\"" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "plot(sin(x)/x,x=-Pi/2..Pi/2,y=0..1,color=magenta);" } }{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6&-%'CURVESG6#7S7 $$!3+++lBjzq:!#<$\"3O*f@kt(>mj!#=7$$!3WNzQW&=B]\"F*$\"36?V&)fuxSmF-7$$ !3.42![ROFW\"F*$\"3;\\bFzl^uoF-7$$!3?xt3O+tv8F*$\"3,mFK-E,JrF-7$$!3xxI t:&z#38F*$\"3/o)\\22by/\"F*$\"3?%H_vQ!*zE)F-7$$!3EWfpKW&Q\")*F-$\"3e5X[k[Nq%)F-7 $$!3(fe1Vw'\\I\"*F-$\"3%[(\\m&\\Ytm)F-7$$!333*H!e\\fG&)F-$\"3jrh'Gw]5$ ))F-7$$!35`u@%3'*4&yF-$\"3?*Gw2\\(*Q+*F-7$$!3%ewEV#\\hqrF-$\"3qq'Q>u,[ ;*F-7$$!3SI*3_gT\\^'F-$\"3fY.I5UX2$*F-7$$!3B!RBoTF&>fF-$\"32>B(GyLhU*F -7$$!3!=qRrNA:@&F-$\"3]P$*Q2:W`&*F-7$$!3Z[5T-#\\)*F- 7$$!3)eE=r,T*=EF-$\"3YY1k\">xg))*F-7$$!3eSV%*H%QP(>F-$\"3rf)3*f*)>N**F -7$$!3)*RWU;s`+8F-$\"3yviuzQ$=(**F-7$$!3.gSQ$\"35^s6tAC#***F-7 $$!3y]Py0ul]:!#?$\"2y\\OC*f******F*7$$\"3O=#e5YQ8x'Fir$\"3=JMJ9*fB***F -7$$\"3I^(**zOz+G\"F-$\"3A()GI8Brs**F-7$$\"3dNv()\\qFJ>F-$\"3.Xyqw>&z$ **F-7$$\"3y0j*\\(z-/EF-$\"3#o9rB`mt))*F-7$$\"3_\"oMd]$=iKF-$\"3@KNwJtd B)*F-7$$\"3SH4XBG)*)*QF-$\"3+/Br;6b[(*F-7$$\"3=DLY%*)Rgg%F-$\"3=%p5dcQ ,l*F-7$$\"3U6;S?@OT_F-$\"3i7Z$\\g$Q[&*F-7$$\"3KMYS.Uq>fF-$\"3!)*QQk5+h U*F-7$$\"3g!oi?&HQMlF-$\"39\"*H3CKS.$*F-7$$\"3Jr$zA=*Q1sF-$\"33)H_l\\k m:*F-7$$\"3gHJCuYpQyF-$\"3ywpa$e?p+*F-7$$\"3)fG\"*Q5O'*\\)F-$\"3ch\"4U %))oQ))F-7$$\"3#=wm/;Fe9*F-$\"3!H%fqs_0j')F-7$$\"37E5$3JHB#)*F-$\"3GFO ))4'RyY)F-7$$\"31h>eG\")QZ5F*$\"3YO)43IQ$p#)F-7$$\"3PK#)fG(=S6\"F*$\"3 iayLAQAc!)F-7$$\"330`g$f(4!=\"F*$\"3o*4#Ga6JNyF-7$$\"3&oOhy?<3C\"F*$\" 3\">15x_.Wi(F-7$$\"3XnP+Q(3/J\"F*$\"3/5>@!ygRP(F-7$$\"3/%yp@B_EP\"F*$ \"3BTc(e)>iUrF-7$$\"3cNK@zn,R9F*$\"3)*[#R*zs$*))oF-7$$\"3*p@f'=h`-:F*$ \"3%p5d&oZ\"*RmF-7$$\"3+++lBjzq:F*F+-%+AXESLABELSG6$Q\"x6\"Q\"yF\\[l-% 'COLOURG6&%$RGBG$\"*++++\"!\")$\"\"!Ff[lFb[l-%%VIEWG6$;$!+Fjzq:!\"*$\" +Fjzq:F]\\l;Fe[l$\"\"\"Ff[l" 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 14 "The procedure " }{TEXT 0 10 "chebseries" }{TEXT -1 30 " can cope with the expression " }{XPPEDIT 18 0 "sin*x/x; " "6#*(%$sinG\"\"\"%\"xGF%F&!\"\"" }{TEXT -1 29 " since it automatical ly uses " }{XPPEDIT 18 0 "Limit(sin*x/x,x = 0,right);" "6#-%&LimitG6%* (%$sinG\"\"\"%\"xGF(F)!\"\"/F)\"\"!%&rightG" }{TEXT -1 20 " for the \" value\" at " }{XPPEDIT 18 0 "x=0" "6#/%\"xG\"\"!" }{TEXT -1 1 "." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 97 "Digits := 25;\nchebseries(sin(x)/x,x=-Pi/2..Pi/2,16,output=poly): \nq := unapply(%,x);\nDigits := 10;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #>%'DigitsG\"#D" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%\"qGf*6#%\"xG6\"6 $%)operatorG%&arrowGF(,4*$)9$\"#;\"\"\"$\":UDc0uq*p#>#e@F!#R*&$\":nQbq Q?7OFFIk(!#PF1)F/\"#9F1!\"\"*&$\":6D,]))G=24%*eg\"!#MF1)F/\"#7F1F1*&$ \":QmYM.(o6*o5_]#!#KF1)F/\"#5F1F;*&$\":zs&*ePlB6#>tbF!#IF1)F/\"\")F1F1 *&$\":G\"Q2(=(37%)p7%)>!#GF1)F/\"\"'F1F;*&$\":7!>$=l=LLLLLL)!#FF1)F/\" \"%F1F1*&$\":V5)3`mmmmmmm;!#DF1)F/\"\"#F1F;$\":#eKz******************F gnF1F(F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%'DigitsG\"#5" }}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 16 "The polyn omial " }{XPPEDIT 18 0 "x*`. `*q(x);" "6#*(%\"xG\"\"\"%#.~GF%-%\"qG6# F$F%" }{TEXT -1 14 " approximates " }{XPPEDIT 18 0 "sin*x" "6#*&%$sinG \"\"\"%\"xGF%" }{TEXT -1 17 " on the interval " }{XPPEDIT 18 0 "[-Pi/2 ,Pi/2]" "6#7$,$*&%#PiG\"\"\"\"\"#!\"\"F)*&F&F'F(F)" }{TEXT -1 1 "." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 64 "evalf(plot((sin(x)-x*q(x))/sin(x),x=-Pi/2..Pi/2,color=blue),25);" }}{PARA 13 "" 1 "" {GLPLOT2D 470 291 291 {PLOTDATA 2 "6&-%'CURVESG6#7_ _l7$$!:>8B>m*[zEjzq:!#C$!:+++++++++]zB$!#V7$$!:1C\\RFn)='Rc'o:F*$!:Gx! HSfG^p`P3>F-7$$!:#\\`(f)[Celk^m:F*$!:%\\]Do^_qk3^Px!#W7$$!:zX,!)\\Aw\\ `wVc\"F*$\":@h`N2,$zrx(H$=F87$$!:mcF+6+qVgOAc\"F*$\":Wzb.WaH!f'y-z*F87 $$!:_n`?sxjPn'4g:F*$\":4NAR.:g[AX'G;F-7$$!:RyzSLbdJuczb\"F*$\":u#)y)o] wr;>OY@F-7$$!:E*e5YH8b7o\"eb\"F*$\":#RuuTow&RdIaa#F-7$$!:7+K\"e0^%>)on `:F*$\":D!f]wcU([*=@QGF-7$$!:)4\"e,<))Q8&p`^:F*$\":pF5w,&e#=3,i.$F-7$$ !:&=U=#ylK2-(R\\:F*$\":)*\\f$)3AYSB$4]JF-7$$!:sK5URVE,4dsa\"F*$\":PpGV G5H$*o5)*=$F-7$$!:eVOi+@?&fr6X:F*$\":*RbGt7AKC`akJF-7$$!:Kl)GIixI)HP3a \"F*$\":F1fgX`Lo()\\C&HF-7$$!:0(3Ma9`4PubO:F*$\":Hi)ou:+,k/n9x*z_\"F*$\":Jo!3wD ?q!Hjg^\"F-7$$!:QTrW^>kSyde_\"F*$\"::uwr')4i@_ry@\"F-7$$!:D_(\\ErzX`yr B:F*$\":pywz9%=r2C)[9*F87$$!:7jB&QZ<&G#zd@:F*$\":-(*oYH2uD6*\\$4'F87$$ !:)R(\\0N_XA*zV>:F*$\":)yE-9n,_?(=a0$F87$$!:r&>guvI.J\"e^^\"F*$!:*HgYK (=3()42R(GF87$$!:Wj'HF-7$$!:z'e)))*)yb7Cv*z9F*$!:vsDr`9w&GD?PIF-7$$!:5TSU<8**oN^iZ\"F* $!:!obGt2jHQ(yw0$F-7$$!:U&\\f\\uCasu_s9F*$!:V^Vk$o9s&f*[IIF-7$$!:0//.+ ;HQqz]Y\"F*$!:I74r3]*[b?DYGF-7$$!:o785b%e6N>jd9F*$!:[RtlP(eHl/3l?F-7$$!:$*HJCl@*o(ROFW\"F*$!:xiX$*H=v z1RJ`\"F-7$$!:s:x#o[7E+&[&Q9F*$!:z'y'3][HMP,&47F-7$$!:],BT3GLGggVV\"F* $!:aE8Z=!*\\Zo42v)F87$$!:H()o**HJ0aqs,V\"F*$!:'GJ)*yiJ7I0&*\\`F87$$!:3 t9e^Mxz![)fU\"F*$!:AN=3L_)*>&e'4%>F87$$!:()eg;tP\\0\"pz@9F*$\":F*QO5r/ $Qj)HJ9F87$$!:mW1v%4978!4wT\"F*$\":_)ek`\"3&p1%Qcs%F87$$!:XI_L;W$p:6U8 9F*$\":TnKgk!R[kZh/zF87$$!:C;)>ztaE=KB49F*$\":X!4t=)H>D@qM4\"F-7$$!:#y )*)3\"Q&4MUd3S\"F*$\":_=;p'\\8?Z(3u')e8F*$\":\"*puC(f))4'=$ylGF-7$$!:&>IKoF#eO4O/N\" F*$\":[R45FRZ9l!)Qy#F-7$$!:v,4\"*)fqfyZ+U8F*$\":h?OD.9LhW\"*eg#F-7$$!: b,&*)4#*e`jMdL8F*$\":no@eg]i'Hi`VBF-7$$!:N,\"oICZZ[@9D8F*$\":*ftvT)*eH ]/F5?F-7$$!::,n9lb8M$3r;8F*$\":q*e?c(e\"Ge;m?;F-7$$!:&4IDs)Q_$=&z#38F* $\":,by=g_R`,5)*=\"F-7$$!:#GgKL^*feF)))*H\"F*$\":k!eB\"HR6Fs%[]tF87$$! :o/*R%R^nL.(\\\"H\"F*$\":@\"Ga)=m*e#=*=*o#F87$$!:a1sal2v3z0JG\"F*$!:Ws `ty]0dV$e[>F87$$!:S3Xl\"REQ[Xru7F*$!:%36$**Gx8\">KnO@X\"F-7$ $!:)RTw*pK04#3a\\7F*$!:W3:N4E$Q<'3Pz\"F-7$$!:&er$3'*)GTy&\\6C\"F*$!:e% ocJ)*4kd62%3#F-7$$!:SOPTnHCl1!fD7F*$!:ghd(e]%p5?C7Z#F-7$$!:'pvV(QqNYbI +@\"F*$!:+**R:>RBtHu#\\EF-7$$!:5iidcbjmnSh?\"F*$!:[ICHDfgmPU3m#F-7$$!: Cn(3W29p)z]A?\"F*$!:$*)Q-j&f$GP)y%fEF-7$$!:Qs7C#f#>2#4O)>\"F*$!:#\\I% \\`A+JG9ak#F-7$$!:^xP256ZF/rW>\"F*$!:3\\#p\"=-s$QA$*=EF-7$$!:y(yQd9G!o G\"p'=\"F*$!:S-4j+#oOoA4IDF-7$$!:1)z.9=&e3`6*y6F*$!:5&\\i^z$e6.ihR#F-7 $$!:F@`!)>)*Rvb+G;\"F*$!:BR=WEMLY!Qt#*>F-7$$!:[Wo?eW@Ue*oY6F*$!:PX'QR3 2s&*[-a9F-7$$!:31wSx%[6F-7$$!:pn$3m4H!4hy08 \"F*$!:*f+fv20RRF]n#)F87$$!:IH\"4eTOCCJ_A6F*$!:Zq`y\"fhIjyB^\\F87$$!:! 4*)4]tVePwY96F*$!:4b(zw?.,1^d&f\"F87$$!:%fq'*plyvTm816F*$\":#>O:u48=(G FW&=F87$$!:)4_$)*yNJfk0y4\"F*$\":a`.h!4DB@U4B_F87$$!:-O.(4][5]YZ*3\"F* $\":]lF(3Hz[K0H`%)F87$$!:1^r&HU$yUlV63\"F*$\":tx!ew()zG`eD\\6F-7$$!:9 \"yIpE`ii;[k5F*$\":c#fmE0=6jRk\"o\"F-7$$!:A6W!46B(4n>y/\"F*$\":`E*[uv# o7Bq\"*3#F-7$$!:[xp-2%y`96@J5F*$\":[lwueS/*p#H7N#F-7$$!:uV&\\JqL5eDg95 F*$\":Bm3j.2\"flW!*fCF-7$$!:I&=!=Fv%**=/X55F*$\":J`%p78<^X9'HY#F-7$$!: (o#3@^8'))z#)H15F*$\":XyAz,'4*z]@lX#F-7$$!:Wo9Cv^x29Y@+\"F*$\":\"G#Hn- \\oE%erSCF-7$$!:-+6s#***)o;+%*z**!#D$\":&ob%H9O)[^F-7$$!:5+-K0aluhv@Z *Fchl$\":nh:5Tt0aNO9Z\"F-7$$!:$)=p+J;E+?O8I*Fchl$\":%=Zf$)Fchl$!:lR6*G](GcY$o8=F-7$$!:1^'4k)\\ ?v`&z*=)Fchl$!:ze,T&*[i!ysk'3#F-7$$!:V\")puSOC\"yc40\")Fchl$!:>(RuXpXr N>'==#F-7$$!:z6V3&H#G(=eR?!)Fchl$!:Ew,-$)QG&)QE%[AF-7$$!:)p(HDA;I!*)e/ yzFchl$!:4HY2jT?txI3F#F-7$$!:;U;U\\4K$ffpNzFchl$!:prl:<>t6QefG#F-7$$!: M2.fw-M'HgM$*yFchl$!:1Kp\\6i(y5f\"QH#F-7$$!:`s*ePgf$**4'*4&yFchl$!:B)z -& 4$>b!3^(Fchl$!:fFDFk'=eeb&y/#F-7$$!:e(\\.M*H'**G-rStFchl$!:k^o2@ji\\9% QtbGK$*G66F-7$$!:f7y.=Ipg(4QogFchl$\":x?#)z&4*['yx% *Q9F-7$$!:b=xCk*[nGu_>fFchl$\":TjgFM'fd5$pWr\"F-7$$!:->v<'*f*Rjh_UdFch l$\":BqRsYwB\\*[)H'>F-7$$!:[>t5GIC\")*[_lbFchl$\":rN;`I._k`ik6#F-7$$!: gp(*3'ya!=eu7_&Fchl$\":14BT.x,Lfu#R@F-7$$!:r>A2Wl'[lU-xaFchl$\":w!Q3P& )RZ#Hod:#F-7$$!:$)pY0-$y;\\RxKaFchl$\":_h*[+$fES%y#f;#F-7$$!:%*>r.g+\\ GjB&)Q&Fchl$\":bX'z^e*>$>=vp@F-7$$!:0q&>!==IlJtUM&Fchl$\":\\y;&z%[z'4N En@F-7$$!:4PdnB_6_F*$\":**H#y22#[y+%QA@F-7$$!:&oC @gO) HcYck**H\"F-7$$!:tnsDmgz1_HtV%Fchl$\":z;07dc[35*3l\"*F87$$!::i*Q5m\\rH )4HE%Fchl$\":&>iN\"z[))H55\"p\\F87$$!:ec1#eD.vQ,\\)3%Fchl$\":t:?[0!>!G 2Y1&fFijl7$$!95N-1&o&yZ/29RF*$!:@3:*y?H@?+i[)G0OFchl$!:hy\\@TRj_Xj>4\"F-7$$!:ql i2IvOa](*3X$Fchl$!:^Z]\"=&yS8.f!)R\"F-7$$!91dnlvPlCl]'H$F*$!:'[(3v9a^+ uWnl\"F-7$$!:SnO[ku!3\\^6FJFchl$!:;s'>p&exi9Pn(=F-7$$!:?k(*Rsr2NxBx&HF chl$!:m:6[(=$\\*>aVA?F-7$$!:g7yNE?@d3GI(GFchl$!:r9O/\"zeS`'zd1#F-7$$!: +heJ!)oMzRK$)y#Fchl$!:P@)yn!G84Cj*)3#F-7$$!:S4RFM<[,rOOq#Fchl$!:7`IZIG 8'4E&=4#F-7$$!9y&>B)e;OA5%*=EF*$!:fFxYL7Pg)>^u?F-7$$!:Sxwh_\")G\"G(RjH #Fchl$!:(=x*3U]$3%Rm*H=F-7$$!9qR.qrf*QVQP(>F*$!:$3r?_ZZWz_>O8F-7$$!:I< lz=/z,8Qa!=Fchl$!:;)R;!**\\&f\"z7?+\"F-7$$!:gP'*e?6ik#y8P;Fchl$!:,_+:; ]HBV:SJ'F87$$!:!zv#QA=XF_P)o9Fchl$!:wuO;R<'R#3aHQ#F87$$!9#yes`+8 F*$\":Xl1\"G\"*[hDNgE;F87$$!:#3fbE9ta-])f9\"Fchl$\":6FWV'[vtVhk]_F87$$ !:]MIN6wj1'yK9**!#E$\":_Fz!GO,()H.9.()F87$$!:vg,:'zV&ep0)o$)Fe\\n$\":< !H%\\03]t(*\\x=\"F-7$$!8(GZ4)*\\/JNGBoF*$\":iUz$eK#[aP*en9F-7$$!:]c!)* R@p'fju\"*[$Fe\\n$\":v>Kl]L?79fY!>F-7$$!7E)[qW)))3ul]:F*$\":;r6#oU%p^% =4n?F-7$$\":+.TFc9joOO\"3LFe\\n$\":xZS?Lm@J4=4#>F-7$$\"8Kqff8:YZQ8x'F* $\":i$*p<*35&Q^OiZ\"F-7$$\":+onS]&yO#G-(y#)Fe\\n$\":J*>!4^A?dU%=07F-7$ $\":+/l@Td?,4mgy*Fe\\n$\":\"zWhZVpq3'p&y*)F87$$\":+CE?$Hty*)HMH6Fchl$ \":DqCMjsJ)f)*[KcF87$$\"9wf$G7gi0Pz+G\"F*$\":n,UC;lnIC<@6#F87$$\":N$Qf =))zN\"zyGW\"Fchl$!:ykAPGee,wmew\"F87$$\":5p^V^P`@@ycg\"Fchl$!:`,i$f>F y&p()>f&F87$$\":&[&4,@w[Hjx%oF*$!:_-B<&4TO#GXgD\"F-7$$\":XR-zP*p(p^_wE#Fchl$!:/)G4&4o%f`LL&z\"F -7$$\"9$QP*\\Q)4-)z-/EF*$!:1Al#GHLl_nPp?F-7$$\":?tN9t%or@uH'o#Fchl$!:& y-j#o7FM7V**3#F-7$$\":53MHh&QAjocoFFchl$!:F1u=*H;:GKX\"4#F-7$$\":bD$o` gt(Re,(4GFchl$!:3W^0>;-T\"z-&3#F-7$$\":+VKW\\'3t/j$3&GFchl$!:3Kaf\\/&o &3:Q2#F-7$$\":Xg\"=NpV[D5(>*GFchl$!:_)*[Fb83)[x#y0#F-7$$\":!z2$fP(yBYd 5LHFchl$!:B^[_zuH\"3]4P?F-7$$\":qZF*Q\"*=DHYk(4$Fchl$!:jybgvH='z,g2>F- 7$$\"9vT#>!4fE7N=iKF*$!:$G\"pG4(Rt9e)pq\"F-7$$\":X)yll0P,ULQ@MFchl$!:z ll&*\\C(\\Q)Q9X\"F-7$$\":Sf\"RH-:wrJe!e$Fchl$!:w/j=&['erDdP9\"F-7$$\": NIDJ*)H4:+$yRPFchl$!:*['zrQdq9F,2%zF87$$\"98!fob4d7$G)*)*QF*$!:@P*)H/e 0<.989%F87$$\":!H$4[[4k$*4Zd2%Fchl$\":Ux7;q<*zfT)ft#Fijl7$$\":]kfFT4ru O6DD%Fchl$\":\"e`1O%3&[vB[6ZF87$$\":5'*42M4ybjv#HWFchl$\":e')R1$3=O]S9*[:E`Fch l$\":(R#fOD'G\"fmHW;#F-7$$\":%zx@DuIrr7bo`Fchl$\":A%ph3a9bBqSp@F-7$$\" :&Rsi)[k&)>lZ4T&Fchl$\":EzU'yG)>v+/'o@F-7$$\":(*pO?b@eA.WLX&Fchl$\":iA v)eS%=u6#*>;#F-7$$\":)fhW:'yIDTSd\\&Fchl$\":0aXn5X8***fc\\@F-7$$\":*>c &)ycL!GzO\"QbFchl$\":j=m\"z(=]&HbKJ@F-7$$\":+3lAu#f2tJ`!e&Fchl$\":\\-L C-()=eR'H2@F-7$$\":0#H!f*4i;%p=,v&Fchl$\":d'G3xqWCWJAa>F-7$$\"9h2a\\# \\c_@/(>fF*$\":L\\5R\\'p_@p<9ntmGF!RPtgFchl$\":\\WEzyO5**3 ^(G9F-7$$\":0_)*QA%3?!fVqA'Fchl$\":^OyN42>fZ.\")3\"F-7$$\":-Sx5r,twF82 Q'Fchl$\":6n-u,3;(>%ef.(F87$$\"9!Gc#)>>X^'HQMlF*$\":%y=$3%>5Q\"3[_)GF8 7$$\":-+&))\\>d.BXQ-nFchl$!:jWHN$RYDQF)o#=F87$$\":0s8:qCE43'QqoFchl$!: uV[T_DlTbw&=lF87$$\":2WUJXx;)QwQQqFchl$!:a*Q1sF*$!:uATHPml&)Ge%)\\\"F-7$$\":+0TP]:AL%>aAvFchl$!:`tc(zEX\"HHzL 1#F-7$$\"9R4r-3q$**o%pQyF*$!:O3+ycaE90qKH#F-7$$\":n'HX@AFPHN+!)yFchl$! :QB7Q#>98U1z%H#F-7$$\":V*\\>SO%3)oBJ@zFchl$!:>8ya.)fD\"GS%*G#F-7$$\":? -P*e]TC37iizFchl$!:;$eM_=#GyP#=xAF-7$$\":&\\!zwZ')zw/IR+)Fchl$!:,ir(f` -6I6+eAF-7$$\":[5j^JH^lsZl3)Fchl$!:9;(ye!y(Q)=3*)>#F-7$$\":+;ZE:sAaSl \"p\")Fchl$!:uBb(QR,'*z=W7@F-7$$\":0F:w#yb;j2SM$)Fchl$!:?H/c*))3#H^Q-' =F-7$$\"9\"Q$e-N%347O'*\\)F*$!:[M*H2OEQQjZ5:F-7$$\":I]$\\%*QdP&)Q=h')F chl$!:2iCy97(f/J-)3\"F-7$$\":]i.kG/V)\\;tA))Fchl$!:k#)=6Y![H4_!>/'F87$ $\":qu8$yY.J9%zU)*)Fchl$!:#\\Vxd-Q:KYY0\")Fijl7$$\"9pQAq]wxyr#e9*F*$\" :QN2?f7a&4(p8c%F87$$\"::CJfRK2nr_\\J*Fchl$\":`(\\&\\&3x/K1z.5F-7$$\":S hQ;s*pja#yS[*Fchl$\":#[M-tlHW()4Y/:F-7$$\":l)fMZqmc#z.Kl*Fchl$\":2W;t( ))R*fx2l#>F-7$$\"9fL0tVj\\I$HB#)*F*$\":UkelZ3fs(>(4C#F-7$$\":N%RHyvH`F Lx.**Fchl$\":nA**G]@H]>FmM#F-7$$\":!GX`$ygpXK<_)**Fchl$\":OK!))>kCF-7$$\":?[:'Q#z3B$Rf-5F*$\":a+rLYB_T(G'GW#F-7$$\":7^x))Rig@8mm+\"F* $\":UOH2!e5<2-ZdCF-7$$\":/aR\"fbC,K$Q2,\"F*$\":@&[jH,()ot%eIY#F-7$$\": (p:S>(Gk=`5[,\"F*$\":0H&)>X8q\"*R*\\fCF-7$$\":mo\\/Ohr7L*4J5F*$\":lju[ o`9axxCN#F-7$$\":N!y\\,S*y18)QZ5F*$\":J/\"ogqkJfe'y4#F-7$$\":f0Z.#ejr! yXS1\"F*$\":&4[Vdk4T&*Q+%p\"F-7$$\":$3j>RwPvIMq!3\"F*$\":;]#)pvs>\"*)= pk6F-7$$\":X$4i[&[sdDK!*3\"F*$\":a\"yuDm*GUfH*>')F87$$\":2cX!e%>\"z!3h t4\"F*$\":#HIpBG'H'o.X*R&F87$$\":p=quO!*4e!**o06F*$\":kS>NsslP?F87 $$\":J\"[*oFhG3t=S6\"F*$!:Y(*p-NFkt'4f39F87$$\":\"GC.#R.r*)eyA7\"F*$!: K#3+E)eqh?W'\\[F87$$\":J/qr]X8rWQ08\"F*$!:%G\\o19\")3#Rb6D)F87$$\":\"e wIAweD0$)zQ6F*$!:dW/9#3M-i6$[:\"F-7$$\":JFXutH)Rj\"eq9\"F*$!:Cmmk\"pr! HYDvY\"F-7$$\":J]?x'RJozydj6F*$!:xz$fRt>jj;m:?F-7$$\":Jt&*z>)z'ff(4!= \"F*$!:GFQh4Gs\"3tM>CF-7$$\":%)4btb=lxa(o(=\"F*$!:\"F*$!:'*3&))*f$Rp:&Gai#F-7$$\":i9%R'4*4YvC2*>\"F*$ !:<)eX'[0hxpC*[EF-7$$\":*GQ2w#ff8XnG?\"F*$!:[M\")e[&)\\70[0m#F-7$$\":; ^`dX>esUim?\"F*$!:rnCv\\%)*36K/gEF-7$$\":U>LajzcJSd/@\"F*$!:ELHy>;$)e# 3@ZEF-7$$\":[#>:a.7v1tjD7F*$!:g\"ovi^(G)Q=OqCF-7$$\":alqG2hX.@<3C\"F*$ !:=sqS!>8YmIW%4#F-7$$\":GsZ#*p#3j^h^\\7F*$!:c/m'>^&GVJTYz\"F-7$$\":-zC cK/;H4:#e7F*$!:)QiS\\2!*>^$)zR9F-7$$\":w&=+_f7?MS\"pE\"F*$!:z#z1g13b;C NP5F-7$$\":]#*y$yvk[vHhv7F*$!:-HyxwLah#\\UmfF87$$\":C*fv/#prn\">J%G\"F *$!:\"\\iRBO%z%\\$f$)G\"F87$$\":)fI8J3p0e3,$H\"F*$\":/\"=[3i'epmFA`$F8 7$$\":s75vX7U$*z4()Q3MF1u3/J\"F*$\" :lVuWn)z+*3u;I\"F-7$$\":AR`n,n8u<*==8F*$\":]qFo66_'=0R#p\"F-7$$\":)*e> '\\****>9'pfK\"F*$\":z.Z>VZ16Y6d/#F-7$$\":uy&[#)Gj)40]PL\"F*$\":CgP@;! =))\\j!)\\BF-7$$\":\\)>N:eEx([I:M\"F*$\":!f*3g2Rg#yVD$f#F-7$$\":C==#[( )*eX#4J\\8F*$\":m1/Fw*o0mxWlFF-7$$\":+Q%3\"oJX8O\"4d8F*$\":kk\")*=i,s! *3-dGF-7$$\":)yu^Z\"[Q(z:)4O\"F*$\":v'***RYC()G-o?AP=F-7$$\":'H%4Pc81&3X$eS\"F*$\":77qx>) y?ZJQE8F-7$$\":9,@ecl/FH#)*49F*$\":lZ33F^9=J,0/\"F-7$$\":KfKzc<.p2ITT \"F*$\":)QY:'RF9\"RZ-wtF87$$\":]Y%)H1UF87$ $\":ovb@d@+`kDCU\"F*$\":Q]xbHXnJyo,H*Fijl7$$\":'QtEuN()\\HMdE9F*$!:0f% =zW[89L!*=CF87$$\":/#*yjdD(p87sI9F*$!:Z6'ek#H(\\^q$oz&F87$$\":A]!\\yvd *y**o[V\"F*$!:zIOT&QMQ*[22;*F87$$\":R3-1eH%4#y;!R9F*$!:M5m!\\G.nf5KY7F -7$$\":3SHx*R4a*pcpW\"F*$!:C%y@#y8c\"*Q!)G%=F-7$$\":wrc[Te()ph'*[X\"F* $!:g=>L\\)>xv;rgBF-7$$\":X.%)>$GUVMl$GY\"F*$!:eM%z3zU!QKv-w#F-7$$\":9N 6\"\\s3)=Xw2Z\"F*$!:%>MBVKq+oI7-IF-7$$\":1=$R`LDCJ9ws9F*$!:mBd)yHYAn2a LIF-7$$\":)4]nd%>/1TYZZ\"F*$!:v[`Oz=loheA0$F-7$$\":!Ro&>c&e'**QJnZ\"F* $!:Gh;uCNP8(*zx0$F-7$$\":$o'Qim^F$pjry9F*$!:'\\[LYPw%[QR'\\IF-7$$\":oK -[(Q30Gjo#[\"F*$!:Hl5A*)\\85aB2*HF-7$$\":_)fO$3;unGcm[\"F*$!:9PgE&eeR^ blsGF-7$$\":OkH>H[(\\Xii!\\\"F*$!:_6eUleZY.KMp#F-7$$\":?I$\\+03A/if%\\ \"F*$!:uQ.NA-[Yb'4_CF-7$$\":/'p04FT%H;m&)\\\"F*$!:tQ1BRzV0Nl*[@F-7$$\" :*=1i<\\um@h`-:F*$!:!fci@b*fO$>&ey\"F-7$$\":g_RTY\"z[%Q-o]\"F*$!:t*prS >0ji`\"HL\"F-7$$\":IVe1,Q3tko5^\"F*$!:POgx5J0`qP+A)F87$$\":,Mxrb%)G,\" \\L::F*$!:kWqL*\\aJ@6sMEF87$$\":sC'p.6$\\H<,'>:F*$\":R1,El(*)\\6_&fG$F 87$$\":2qbpPafVIM<_\"F*$\":rP\\wnaB.^!R;jF87$$\":U::-lxpdVnQ_\"F*$\":( y_@$)QE)yN*F87$$\":yguM#4+=n0+E:F*$\":)*y$H9f5p')=(zB\"F-7$$\":81Mn >C!f)pL\"G:F*$\":vl'=8#R?o[\\Z`\"F-7$$\":%oHDV22Th**RK:F*$\":#ea(yKmYz >jk4#F-7$$\":a(=x*Gxdbt1be#F-7$$\":Cy!HOQ;0([K4a\" F*$\":\"=7d8(z`:Zx\"fHF-7$$\":&*o4GQ5s)\\()>X:F*$\":`rx'*o*zBxjfmJF-7$ $\":I9pglL#G\")=LZ:F*$\":Q\"47^XE\\;!p&*=$F-7$$\":mfG$HpDp7]Y\\:F*$\": (*REtolph5mw9$F-7$$\":,0)e--G5W\")f^:F*$\":9^[)Gmuj!pd<.$F-7$$\":O]ZeZ .8bFJPb\"F*$\":zU2c)4KE]$*)>$GF-7$$\":s&p5\\nK#pSkeb\"F*$\":\"*\\F(Q%R \"\\1\\vPDF-7$$\":2TmB-]L$Qv*zb\"F*$\":;S$[.n*=+3Tw8#F-7$$\":U'ei&HtV( p18g:F*$\":eHX$QK)[q5\"R>;F-7$$\":yJ&))olR:,QEi:F*$\":6J='G$=Sn/8')p*F 87$$\":8xW@%)>kD$pRk:F*$\":`Y2J'pA-Deg\\j'o:F*$!:'=K%)Q8[n].G7>F-7$$\":>8B>m*[z Ejzq:F*F+-%'COLOURG6&%$RGBG$\"\"!Fi`qFh`q$\"*++++\"!\")-%+AXESLABELSG6 $Q\"x6\"Q!Faaq-%%VIEWG6$;$!:A8B>m*[zEjzq:F*$\":A8B>m*[zEjzq:F*%(DEFAUL TG" 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 37 "The m aximum relative error in using " }{XPPEDIT 18 0 "p(x) = x*q(x);" "6#/ -%\"pG6#%\"xG*&F'\"\"\"-%\"qG6#F'F)" }{TEXT -1 16 " to approximate " } {XPPEDIT 18 0 "sin*x" "6#*&%$sinG\"\"\"%\"xGF%" }{TEXT -1 17 " in the \+ interval " }{XPPEDIT 18 0 "[-Pi/2, Pi/2]" "6#7$,$*&%#PiG\"\"\"\"\"#!\" \"F)*&F&F'F(F)" }{TEXT -1 11 " is about " }{XPPEDIT 18 0 "3*`. `*10^( -19);" "6#*(\"\"$\"\"\"%#.~GF%)\"#5,$\"#>!\"\"F%" }{TEXT -1 1 "." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 47 "To reduce rounding errors in the evaluation of " }{XPPEDIT 18 0 "q(x)" "6#-%\"q G6#%\"xG" }{TEXT -1 40 ", convert the polynomial to nested form." }} {PARA 0 "" 0 "" {TEXT -1 185 "The coefficients are rounded to 20 decim al digits, which is a few more decimal digits than are needed for conv ersion to standard double precision binary hardware floating point num bers." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "p := unapply(evalf(convert(x*q(x),horner),20),x);" }} {PARA 12 "" 1 "" {XPPMATH 20 "6#>%\"pGf*6#%\"xG6\"6$%)operatorG%&arrow GF(*&,&$\"5z******************!#?\"\"\"*&,&$!54`mmmmmmm;F0F1*&,&$\"5$= l=LLLLLL)!#AF1*&,&$!52(=(37%)p7%)>!#BF1*&,&$\"5!fPlB6#>tbF!#DF1*&,&$!5 XLqo6*o5_]#!#FF1*&,&$\"5+&))G=24%*eg\"!#HF1*&,&$!51(Q?7OFFIk(!#KF1*&$ \"5cS2(*p#>#e@F!#MF1)9$\"\"#F1F1F1FXF1F1F1FXF1F1F1FXF1F1F1FXF1F1F1FXF1 F1F1FXF1F1F1FXF1F1F1FYF1F(F(F(" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "xx := 1.5;\nevalf(evalf(p(xx ),20),17);\nevalf(evalf(sin(xx),20),17);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#xxG$\"#:!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2VaSg')\\ \\(**!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2VaSg')\\\\(**!#<" }}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 46 "We can te st the accuracy of the approximation " }{XPPEDIT 18 0 "p(x)" "6#-%\"pG 6#%\"xG" }{TEXT -1 5 " for " }{XPPEDIT 18 0 "sin*x" "6#*&%$sinG\"\"\"% \"xGF%" }{TEXT -1 35 " with random numbers between 0 and " }{XPPEDIT 18 0 "Pi/2" "6#*&%#PiG\"\"\"\"\"#!\"\"" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 83 "The printout occurs only when the error is greater t han or equal to the specified \"" }{TEXT 269 3 "eps" }{TEXT -1 3 "\". \n" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "evalf(Pi/2,22);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\"7K#>m*[zEjzq:!#@" }}}{PARA 0 "" 0 " " {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 393 "randomize ():\neps := Float(3,-16);\nfor i from 1 to 100 do\n xx := evalf(rand ()/Float(1,12)*1.5707963267948966192,20);\n sxx := evalf(sin(xx),20 );\n pxx := evalf(p(xx),16);\n e := evalf(abs((sxx-pxx)/sxx),20); \n if e>=eps then \n printf(\" trial no. %d, x = %.16f,\\n\", i,xx);\n printf(\" sin(x) = %.16f, p(x) = %.16f, error = %.2e\\n \\n\",sxx,pxx,e); \n end if;\nend do:\nDigits := 10:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$epsG$\"\"$!#;" }}{PARA 6 "" 1 "" {TEXT -1 39 " \+ trial no. 6, x = 1.5623667980776684," }}{PARA 6 "" 1 "" {TEXT -1 72 " sin(x) = .9999644717331810, p(x) = .9999644717331806, error = 3.96e -16" }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 39 " \+ trial no. 33, x = .0175923677736414," }}{PARA 6 "" 1 "" {TEXT -1 72 " sin(x) = .0175914603399170, p(x) = .0175914603399170, error = 3.08e- 16" }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}{PARA 6 "" 1 "" {TEXT -1 40 " t rial no. 82, x = 1.4073883474147891," }}{PARA 6 "" 1 "" {TEXT -1 72 " sin(x) = .9866785982806671, p(x) = .9866785982806668, error = 3.45e- 16" }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" } }{PARA 0 "" 0 "" {TEXT 259 5 "Note:" }{TEXT -1 21 " The coefficients o f " }{XPPEDIT 18 0 "p(x)" "6#-%\"pG6#%\"xG" }{TEXT -1 83 " are not vas tly different from those of the Taylor polynomial of degree 17 about 0 ." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 75 "taylor(sin(x),x,18);\nconvert(%,polynom):\nt := unapp ly(sort(evalf(%,16)),x);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#+7%\"xG\" \"\"F%#!\"\"\"\"'\"\"$#F%\"$?\"\"\"&#F'\"%S]\"\"(#F%\"'!)GO\"\"*#F'\") +o\"*R\"#6#F%\"++3-Fi\"#8#F'\".+!oVn28\"#:#F%\"0+g4Guob$\"#<-%\"OG6#F% \"#=" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%\"tGf*6#%\"xG6\"6$%)operator G%&arrowGF(,4*$)9$\"#<\"\"\"$\"1@bMasX6G!#I*&$\"1;)>=tjrk(!#GF1)F/\"#: F1!\"\"*&$\"1h@o$Q/fg\"!#DF1)F/\"#8F1F1*&$\"1sTaQ3@0D!#BF1)F/\"#6F1F;* &$\"1*e)RA>tbF!#@F1)F/\"\"*F1F1*&$\"1%)p7%)p7%)>!#>F1)F/\"\"(F1F;*&$\" 1LLLLLLL$)!#=F1)F/\"\"&F1F1*&$\"1nmmmmmm;!#;F1)F/\"\"$F1F;F/F1F(F(F(" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 43 "Howeve r the values given by the polynomial " }{XPPEDIT 18 0 "q(x)" "6#-%\"qG 6#%\"xG" }{TEXT -1 55 " are more accurate than those of the Taylor pol ynomial " }{XPPEDIT 18 0 "t(x)" "6#-%\"tG6#%\"xG" }{TEXT -1 6 " when \+ " }{TEXT 268 1 "x" }{TEXT -1 9 " is near " }{XPPEDIT 18 0 "Pi/2;" "6#* &%#PiG\"\"\"\"\"#!\"\"" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 74 "xx := evalf(Pi/2,17):\ne valf(p(xx),17);\nevalf(t(xx),17);\nevalf(sin(xx),17);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2++++++++\"!#;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2M/++++++\"!#;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2++++++++\" !#;" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 74 "xx := 1.56:\nevalf(p(xx),17);\nevalf(t(xx),17);\neval f(evalf(sin(xx),25),17);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2Km*H-s T****!#<" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2M/+B?<%****!#<" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\"2Im*H-sT****!#<" }}}{PARA 0 "" 0 " " {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}} {SECT 1 {PARA 4 "" 0 "" {TEXT -1 6 "sine16" }}{PARA 0 "" 0 "" {TEXT -1 135 "Here is the code for the fixed precision version of the sine f unction, which can be evaluated with hardware floating point arithmeti c. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "evalf(evalf(2*Pi,25),22);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"7DpZ'ezrI&=$G'!#@" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 983 "sine16 := proc(xx)\n lo cal x,z,k,b1,b3,b5,b7,b9,b11,b13,b15,b17,pi,pi2;\n\n # coeffs in pol y approx for sin(x)\n b1 := .99999999999999999979;\n b3 := -.16666 666666666665309;\n b5 := .83333333333331865183e-2;\n b7 := -.19841 269841208718707e-3;\n b9 := .27557319211236537590e-5;\n b11 := -.2 5052106891168703345e-7;\n b13 := .16058940907182888500e-9;\n b15 : = -.76430272736122038706e-12;\n b17 := .27215821926997074056e-14;\n \+ \n pi := 3.141592653589793238463;\n pi2 := 6.2831853071795864769 25;\n\n x := evalf(xx);\n \n # Reduce the range to -Pi/2<=x<= 3*Pi/2\n if x>4.712388980384690 or x<-1.570796326794897 then\n \+ # Determine the number of multiples of 2*Pi to add or subtract.\n \+ k := floor(x/pi2+0.25);\n x := x - k*pi2;\n end if;\n\n # If x>Pi/2, replace x by Pi - x so that abs(x)<=Pi/2\n if x>1.570796326 7948966192 then x := pi-x end if;\n\n z := x*x;\n ((((((((b17*z+b1 5)*z+b13)*z+b11)*\n z+b9)*z+b7)*z+b5)*z+b3)*z+b1)*x;\nend p roc: " }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 28 "Testing \+ the procedure sine16" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 " " {TEXT -1 72 "We can use Maple's sine function to check the accuracy \+ of the procedure " }{TEXT 0 6 "sine16" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 58 "evalf(plo t(1-'sine16'(x)/sin(x),x=0..3.14,color=blue),25);" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6&-%'CURVESG6#7\\bl7$$\":ommmm;/EvX )Q@!#F$\"(#Q*4#!#D7$$\":NLLLLL3_]\"pxUF*$\"(Bv4#F-7$$\":.++++]7yDPlT'F *$\"(GW4#F-7$$\":qmmmmm;/,$Qb&)F*$\"((4!4#F-7$$\":+++++]i:X2LG\"!#E$\" (Nx2#F-7$$\":MLLLLL$3-m26F-7$$\":,+++++]i!)HK8&F@$\"(0Jv\"F-7$$\": MLLLLLL$3kIWoF@$\"(rn\\\"F-7$$\":ommmm;H2,0JL)F@$\"(CuA\"F-7$$\":-++++ +DJh.>#)*F@$\"'**H#*F-7$$\":MLLLL3_:Aq58\"F-$\"')>#fF-7$$\":nmmmmm\"z \"3]*z7F-$\"'0XCF-7$$\":MLLLLe*[b5QZ9F-$!&@a\"!#C7$$\":+++++](=H?\"[h \"F-$!&,Z&F_p7$$\":mmmmmT&)G+VAy\"F-$!&V>*F_p7$$\":LLLLLL$ewRn\\>F-$!' id7F_p7$$\":KLLLLLe9z9#=@F-$!'j]:F_p7$$\":KLLLLLLjgbnG#F-$!'v%y\"F_p7$ $\":KLLLLL37U'HbCF-$!'t]>F_p7$$\":LLLLLL$3Os$Qi#F-$!'yT?F_p7$$\":***** ***\\P%)472xq#F-$!'yd?F_p7$$\":mmmmmT&)e+x:z#F-$!'%R0#F_p7$$\":LLLL$ek y!*oWvGF-$!'>I?F_p7$$\":+++++](ovnJfHF-$!'o')>F_p7$$\":MLLLLe*[Xl0FJF- $!'!=%=F_p7$$\":nmmmmm\"H:jz%H$F-$!'/C;F_p7$$\":MLLLLL$3aDJ]MF-$!'fj8F _p7$$\":,+++++vGzGeg$F-$!'+b5F_p7$$\":nmmmmmm;.X8w$F-$!&*zqF_p7$$\":ML LLLLe/Fho\"RF-$!&sL$F_p7$$\":,+++++vyK*)y2%F-$\"&7&pF-7$$\":nmmmmm\"H& Q<*QUF-$\"'wWZF-7$$\":MLLLLL3FWX**R%F-$\"'ik')F-7$$\":++++++D,]t4c%F-$ \"(O4B\"F-7$$\":MLLLLLeu%*3vs%F-$\"(OUc\"F-7$$\":nmmmmm\"z%RWS*[F-$\"( .%R=F-7$$\":,+++++D@%)z01&F-$\"()\\W?F-7$$\":MLLLLLe%*G:rA&F-$\"(y+<#F -7$$\":,++++vo4j:'o_F-$\"(o\")=#F-7$$\":nmmmm;zC(f65`F-$\"(L3?#F-7$$\" :MLLLLe*)RJ;;N&F-$\"(9!3AF-7$$\":,++++++bl;JR&F-$\"(s'4AF-7$$\":nmmmmT 5q*phMaF-$\"(ud?#F-7$$\":MLLLL$3_Qt6waF-$\"(1j>#F-7$$\":,++++DJ+o^s&F-$\"(J M-#F-7$$\":++++++DOv?6*eF-$\"(]>!=F-7$$\":nmmmmTgFct=1'F-$\"(`U\\\"F-7 $$\":MLLLL$e*=PEEB'F-$\"(4v6\"F-7$$\":,++++DJ5=zLS'F-$\"'NsoF-7$$\":nm mmmmm,*>8ulF-$\"'y=AF-7$$\":MLLLL$eRd6`CnF-$!&l+#F_p7$$\":,+++++DYKI\\ (oF-$!&F>'F_p7$$\":nmmmm;a=\\H`-(F-$!'d=5F_p7$$\":MLLLLL$3f'Gd<(F-$!'H $Q\"F_p7$$\":,++++]P%*\\U]M(F-$!'\\MAF_p7$$\":++++++](zI*H-)F-$!'w'>#F_p7$$\":++++++v$4w *z5)F-$!'gG@F_p7$$\":+++++++!R@+$>)F-$!'gJ?F_p7$$\":++++++]#)>6IO)F-$! 'eaF-7$$\":MLLLLLe%>NZ$y*F-$\"( %fRAF-7$$\":,+++](o/'GH>()*F-$\"(!ppBF-7$$\":nmmmmTNE0&Qg**F-$\"(r>Y#F -7$$\":+++](oHf$Hh/+\"F_p$\"(FJ\\#F-7$$\":LLLLeRA>3%)[+\"F_p$\"(SR^#F- 7$$\":mmm;H#=DqoI45F_p$\"(%>CDF-7$$\":+++++D\"ee'HP,\"F_p$\"(6P_#F-7$$ \":MLLL$e*)*=\"3UJ5F_p$\"(xCT#F-7$$\":nmmmmm;_'>6\\5F_p$\"(Wu7#F-7$$\" :nmmmm;HEp)4k5F_p$\"(8&e@F_p 7$$\":+++++]7>Q\"zy6F_p$!'F=BF_p7$$\":MLLL3Fpu,2l=\"F_p$!'A^CF_p7$$\": nmmm;/EIlAU>\"F_p$!'\"*RDF_p7$$\":MLL$3FW!3Z!3)>\"F_p$!'kmDF_p7$$\":++ ++D\"Ge)GQ>?\"F_p$!'=\"e#F_p7$$\":nmm;z>hj5'z07F_p$!'C$e#F_p7$$\":MLLL LeRT#Rl47F_p$!'gsDF_p7$$\":++++]7`_>&3D7F_p$!'Z+CF_p7$$\":nmmmmmmjY;0C \"F_p$!'OA?F_p7$$\":MLLLe*[VT<)*[7F_p$!'YKF-7$$\":MLLLLekK@pjS\"F_p$\"(56R\"F-7$$\":+++](o/$yeu 0T\"F_p$\"(9$*4\"F-7$$\":nmmmTN'Ri*zZT\"F_p$\"'S/zF-7$$\":MLL$eRA'pL&) *=9F_p$\"'5wYF-7$$\":++++]7G:r!>B9F_p$\"'ZV8F-7$$\":nmm;/,%4'3'RF9F_p$ !&V0#F_p7$$\":MLLLe*)f1Y,;V\"F_p$!&TZ&F_p7$$\":+++]7yD_$o!eV\"F_p$!&%p ))F_p7$$\":nmmmmm\"z4A,S9F_p$!',>7F_p7$$\":nmm;/,>k0uQW\"F_p$!'&G^\"F_ p7$$\":nmmmTNYI!ftZ9F_p$!'j\"z\"F_p7$$\":nmm;zpt'\\xf^9F_p$!'!40#F_p7$ $\":nmmm;/,jffaX\"F_p$!'8'G#F_p7$$\":nmmm\"Hdb*G$=j9F_p$!',mEF_p7$$\": nmmmmT5G)p!4Z\"F_p$!'/&*GF_p7$$\":nmmT&)3Ch!z$GZ\"F_p$!'pCHF_p7$$\":nm m;/wP%H)oZZ\"F_p$!'IUHF_p7$$\":nmm\"HK9v_(*pw9F_p$!'TZHF_p7$$\":nmmmT5 lgnI'y9F_p$!'hRHF_p7$$\":nmm;zW#pAD\\#[\"F_p$!'q$)GF_p7$$\":nmmm;z>$pV N'[\"F_p$!'$>x#F_p7$$\":nmm;a8Zf@;-\\\"F_p$!'S-EF_p7$$\":nmmm\"zWdi!yS \\\"F_p$!'7uBF_p7$$\":nmm;H#=?4*Rz\\\"F_p$!'C(3#F_p7$$\":nmmmm;Hev,=] \"F_p$!'@V.#F-7$$\":nmmT gF;1=VI`\"F_p$\"(!)\\H#F-7$$\":+++++voA%f7N:F_p$\"(g$RDF-7$$\":mmm;zpt bY\"HR:F_p$\"(WB&HF-7$$\":LLLLeky)))pXV:F_p$\"(8lA$F-7$$\":mmm\"z>6`]( Rba\"F_p$\"(-bH$F-7$$\":+++]Pf$=7DiZ:F_p$\"(c%4LF-7$$\":LLL3x1OQF0(\\: F_p$\"(>/E$F-7$$\":mmmm;a)[N!)y^:F_p$\"(0)RJF-7$$\":+++Dc,TrzqQb\"F_p$ \"(*QQHF-7$$\":LLL$e*[$zeN&fb\"F_p$\"(Bik#F-7$$\":mmmTN'fW?j.e:F_p$\"( cED#F-7$$\":++++vV)4#3>,c\"F_p$\"(^iu\"F-7$$\":LLLe9\"4vV=?i:F_p$\"(kZ 6\"F-7$$\":mmm;aQ.ag%Gk:F_p$\"',^MF-7$$\":+++v$fe0ntOm:F_p$!&tw&F_p7$$ \":LLLLLL3(G,Xo:F_p$!'ml;F_p7$$\":LLL3_v:F`81d\"F_p$!'z!*HF_p7$$\":LLL $3xJsOpxs:F_p$!'Bv=F_p7$$\":LLLe*)fI2MS\\d\"F_p$!&^:(F_p7$$\":LLLL3-QZ u.rd\"F_p$\"'<;EF-7$$\":LLL3FWX([rEz:F_p$\"(EI2\"F-7$$\":LLL$ekGv_0V\" e\"F_p$\"(zWt\"F-7$$\":LLLekGgn&Rf$e\"F_p$\"(&ogAF-7$$\":LLLL$3xwgtv&e \"F_p$\"(r`m#F-7$$\":LLL$3_DyoT3!f\"F_p$\"(9/;$F-7$$\":LLLLeR(zw4T%f\" F_p$\"(%R6LF-7$$\":LLL$eRA\"[yP()f\"F_p$\"(ws>$F-7$$\":LLLLL3FGfkIg\"F _p$\"(%3S\"R2;F_p$ \"(GLV#F-7$$\":LLLe*[$\\[![b4;F_p$\"(H*p@F-7$$\":LLLL3xc)3#=kGh\")Qh\"F_p$\"(&p%f\"F-7$$\":LLL$e9;(o,Xgh\"F_p$ \"(C>H\"F-7$$\":LLLek.z3U3#=;F_p$\"'zV)*F-7$$\":LLLL$ek)[#=P?;F_p$\"'e bnF-7$$\":LLL3-)Q*)G_`A;F_p$\"'(eo$F-7$$\":LLL$3-8!Hj)pC;F_p$\"&ci'F-7 $$\":LLLeRs3p.ioi\"F_p$!&(*G#F_p7$$\":LLLLe9;4WD!H;F_p$!&$\\^F_p7$$\": LLL3xcB\\%))=J;F_p$!&u*yF_p7$$\":LLL$e*)4$*[ANL;F_p$!'w^5F_p7$$\":LLLe 9TQHl:bj\"F_p$!'i*H\"F_p7$$\":LLLLL$e%p0zwj\"F_p$!';K:F_p7$$\":++++v=U gbX9k\"F_p$!'r(*=F_p7$$\":mmmm;aQ^07_k\"F_p$!'L5AF_p7$$\":LLLLe*[Ba&y* [;F_p$!'(yY#F_p7$$\":+++++DJL0XFl\"F_p$!'ZpEF_p7$$\":mmmmTgFCb6ll\"F_p $!'S:GF_p7$$\":LLLL$eR_^!y-m\"F_p$!'*o!HF_p7$$\":mmm;a8s5Ih@m\"F_p$!'# G$HF_p7$$\":++++DJ?1bWSm\"F_p$!'$f%HF_p7$$\":LLL$e*[o,!y#fm\"F_p$!'fYH F_p7$$\":mmmmmm;(\\5\"ym\"F_p$!'XNk'o\"F_p$!'*pD#F_p7$$ \":mmmm;z%HW+T!p\"F_p$!'`C?F_p7$$\":LLLLe9\"RVl<%p\"F_p$!'np\"4o95h\"F-7$$\":mmm;z%\\!o=!pU:ml=#=F_p$\"(KX&=F-7$$\":+++++++\\yq-$=F_p$\"(eqV\"F-7$$\": ++++]iS$eN\\Q=F_p$\"'2#)**F-7$$\":+++++D\"yJjrY=F_p$\"'!>V&F-7$$\":+++ +](=A0\"R\\&=F_p$\"&c_)F-7$$\":+++++]i'y=;j=F_p$!&Dj$F_p7$$\":++++]7.@ l%Qr=F_p$!&2\"zF_p7$$\":+++++vVbU2'z=F_p$!'F)=\"F_p7$$\":++++]P%)*)>Iy )=F_p$!'KY:F_p7$$\":++++++DC(H0'*=F_p$!'?e=F_p7$$\":++++](ok%)['>\">F_ p$!'X6BF_p7$$\":+++++voozwy#>F_p$!'\")[DF_p7$$\":+++](=U#\\xa=$>F_p$!' dtDF_p7$$\":++++vozHvKe$>F_p$!'k%e#F_p7$$\":+++]i:N5t5)R>F_p$!'@#e#F_p 7$$\":++++]i!44()yV>F_p$!'`mDF_p7$$\":++++Dc,_mW<&>F_p$!'p'\\#F_p7$$\" :+++++]78i+(f>F_p$!'DyBF_p7$$\":++++DJ?TNM&o>F_p$!'^%>#F_p7$$\":++++]7 Gp3ot(>F_p$!'%='>F_p7$$\":++++v$ft>=?')>F_p$!'?(o\"F_p7$$\":+++++vVDbN ]*>F_p$!'8y8F_p7$$\":++++Dc^`GpQ+#F_p$!']U5F_p7$$\":++++]Pf\"=Iq7?F_p$ !&Q)oF_p7$$\":++++v=n4vO:-#F_p$!&\"QKF_p7$$\":++++++vP[q..#F_p$\"&^L%F -7$$\":MLLL$e*)f&)zIQ?F_p$\"'D#p$F-7$$\":nmmmm\"HU([Xi/#F_p$\"'**eoF-7 $$\":,+++](oC*)H=a?F_p$\"'a&))*F-7$$\":MLLLL$32\"\\?@1#F_p$\"(xFF\"F-7 $$\":,++++v=Z\\&*z2#F_p$\"(@1x\"F-7$$\":nmmmmmm$)\\qQ4#F_p$\"(xQ:#F-7$ $\":,++++]7KX?36#F_p$\"(?vT#F-7$$\":MLLLLLe!3/xF@F_p$\"(k8_#F-7$$\":nm mm;zpn*y+K@F_p$\"(QA_#F-7$$\":,++++D\"[&QXi8#F_p$\"(^K^#F-7$$\":MLLL$3 F>uG[S@F_p$\"([X\\#F-7$$\":nmmmm;/HO?Z9#F_p$\"(>jY#F-7$$\":MLLLL3F.M&> `@F_p$\"($>#Q#F-7$$\":++++++]xJq;;#F_p$\"(1IE#F-7$$\":LLLL$e*)4'\\Hq<# F_p$\"(Qj'>F-7$$\":mmmmm\"zWu')Q#>#F_p$\"(5>e\"F-7$$\":********\\(oz_y u2AF_p$\"(V98\"F-7$$\":LLLLL$e9Jq5BAF_p$\"'P&Q'F-7$$\":mmmmT&)e0&G]JAF _p$\"'#))f$F-7$$\":********\\(=(*p')*)RAF_p$\"&_(zF-7$$\":LLLLe*[Q*[%H [AF_p$!&+)>F_p7$$\":mmmmm\"zz3.pcAF_p$!&np%F_p7$$\":LLLL$eRiZ>[tAF_p$! &'3)*F_p7$$\":++++++]ket-H#F_p$!'YG9F_p7$$\":nmmm;H#)*4K21BF_p$!''Gx\" F_p7$$\":MLLLLe9N$G(=K#F_p$!'TH?F_p7$$\":,+++](o/dCnPBF_p$!'X*=#F_p7$$ \":nmmmm;z03sMN#F_p$!'!*[AF_p7$$\":,+++]iS.(3gdBF_p$!'\"yC#F_p7$$\":ML LLL3-,mH[CyBF_p$!'$>9#F_p7$$\":MLLLL$3n)R- lQ#F_p$!')[0#F_p7$$\":nmmmmm;xbCF_p$ !'G([\"F_p7$$\":nmmm;/EMIzcV#F_p$!'F36F_p7$$\":MLLLLe*3!*e#=X#F_p$!&e& oF_p7$$\":,+++]7`nZszY#F_p$!&%zBF_p7$$\":nmmmmm;M1>T[#F_p$\"'vb@F-7$$ \":,+++]ilK/B5]#F_p$\"'EjnF-7$$\":MLLLLe9J-Fz^#F_p$\"([H5\"F-7$$\":nmm m;ajH+J[`#F_p$\"(*[x9F-7$$\":+++++]7G)\\t^DF_p$\"(0[y\"F-7$$\":LLLL$3F \\Cb,oDF_p$\"(mh+#F-7$$\":mmmmm\"H#F-7$$\":********\\7`ygw0g#F_p$\"(3G?#F-7$$\":LLL$3xJFVnk /EF_p$\"(:M?#F-7$$\":mmmm\"HKpyor3EF_p$\"(%p)>#F-7$$\":******\\7G8T,(y 7EF_p$\"(x')=#F-7$$\":LLLLLLL&\\r&oh#F_p$\"(7M<#F-7$$\":KLLLL3_[N1Nj#F _p$\"(.y0#F-7$$\":KLLLL$3F_p7$$\":nmmm;aj`#3m`GF_p$!'mS?F_p7$$\":,++++DcmNbB'GF_ p$!'Dm?F_p7$$\":MLLL$e*[z))\\5(GF_p$!'Zq?F_p7$$\":nmmmmmT#>WuzGF_p$!'R `?F_p7$$\":+++++]()*)Q]3\"HF_p$!'6C=F_p7$$\":LLLLLLL(ej&>%HF_p$!'qh8F_ p7$$\":********\\7GX3R&eHF_p$!'MS5F_p7$$\":mmmmm\"HK5=7vHF_p$!&+#oF_p7 $$\":LLLL$3x6OXq\"*HF_p$!&'**HF_p7$$\":+++++]7>E(G3IF_p$\"&3<*F-7$$\": +++++D1k/fT-$F_p$\"'LAYF-7$$\":+++++++4$3.SIF_p$\"'/d\")F-7$$\":+++++v $R:E!f0$F_p$\"(+)R6F-7$$\":+++++]())*Ru<2$F_p$\"(zDU\"F-7$$\":++++]i:* *zI))3$F_p$\"(vlm\"F-7$$\":+++++vV**>()e5$F_p$\"(j)H=F-7$$\":+++]7y]** H^,6$F_p$\"(aT&=F-7$$\":++++D\"y&**R:W6$F_p$\"(!ep=F-7$$\":+++]P%['** \\z'=JF_p$\"(!pt=F-7$$\":++++](=(**fVH7$F_p$\"(v='=F-7$$\":+++]i!*y**p 2s7$F_p$\"(\\T#=F-7$$\":++++v$f)**zr98$F_p$\"('zL " 0 "" {MPLTEXT 1 0 59 "xx := 3.;\nevalhf(sine16(xx) );\nevalf(evalf(sin(xx),20),18);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# >%#xxG$\"\"$\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"3-r')f!3+7T\"! #=" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"3As')f!3+7T\"!#=" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "xx : = 28.5;\nevalhf(sine16(xx));\nevalf(evalf(sin(xx),20),18);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#xxG$\"$&G!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!3+vz'=ScvB#!#=" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!3 Ckz'=ScvB#!#=" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 102 "There are unavoidable accuracy problems when the argumen t is close to a non-zero integer multiple of " }{XPPEDIT 18 0 "Pi" "6 #%#PiG" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 84 "xx := evalf(Pi,9);\nevalhf(sine16(x x));\nevalhf(sin(xx));\nevalf(evalf(sin(xx),35),18);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#xxG$\"*l#fTJ!\")" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"3wThY^Lz*e$!#E" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"3k@3$RZ$z*e $!#E" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"3QVEYQKz*e$!#E" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }} }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 38 "Translating from Maple code to \+ C code " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 111 "We can translate this program into C using the Maple procedure C \+ in the code generating package codegen. \n see " }{HYPERLNK 17 "codege n[C]" 2 "codegen[C]" "" }{TEXT -1 5 " and " }{HYPERLNK 17 "codegen/C/p rocedure" 2 "codegen/C/procedure" "" }{TEXT -1 2 ". " }}{PARA 0 "" 0 " " {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "with(codeg en,C):\nC(sine16,ansi);" }}{PARA 6 "" 1 "" {TEXT -1 17 "#include " }}{PARA 6 "" 1 "" {TEXT -1 24 "double sine16(double xx)" }}{PARA 6 "" 1 "" {TEXT -1 1 "\{" }}{PARA 6 "" 1 "" {TEXT -1 12 " double b1; " }}{PARA 6 "" 1 "" {TEXT -1 13 " double b11;" }}{PARA 6 "" 1 "" {TEXT -1 13 " double b13;" }}{PARA 6 "" 1 "" {TEXT -1 13 " double b1 5;" }}{PARA 6 "" 1 "" {TEXT -1 13 " double b17;" }}{PARA 6 "" 1 "" {TEXT -1 12 " double b3;" }}{PARA 6 "" 1 "" {TEXT -1 12 " double b5; " }}{PARA 6 "" 1 "" {TEXT -1 12 " double b7;" }}{PARA 6 "" 1 "" {TEXT -1 12 " double b9;" }}{PARA 6 "" 1 "" {TEXT -1 8 " int k;" }} {PARA 6 "" 1 "" {TEXT -1 12 " double pi;" }}{PARA 6 "" 1 "" {TEXT -1 13 " double pi2;" }}{PARA 6 "" 1 "" {TEXT -1 11 " double x;" }} {PARA 6 "" 1 "" {TEXT -1 11 " double z;" }}{PARA 6 "" 1 "" {TEXT -1 3 " \{" }}{PARA 6 "" 1 "" {TEXT -1 15 " b1 = 0.1E1;" }}{PARA 6 "" 1 "" {TEXT -1 29 " b3 = -0.1666666666666667;" }}{PARA 6 "" 1 "" {TEXT -1 31 " b5 = 0.8333333333333187E-2;" }}{PARA 6 "" 1 "" {TEXT -1 32 " b7 = -0.1984126984120872E-3;" }}{PARA 6 "" 1 "" {TEXT -1 31 " b9 = 0.2755731921123654E-5;" }}{PARA 6 "" 1 "" {TEXT -1 32 " \+ b11 = -0.250521068911687E-7;" }}{PARA 6 "" 1 "" {TEXT -1 32 " b13 = 0.1605894090718289E-9;" }}{PARA 6 "" 1 "" {TEXT -1 34 " b15 = -0 .7643027273612204E-12;" }}{PARA 6 "" 1 "" {TEXT -1 33 " b17 = 0.272 1582192699707E-14;" }}{PARA 6 "" 1 "" {TEXT -1 30 " pi = 0.31415926 53589793E1;" }}{PARA 6 "" 1 "" {TEXT -1 31 " pi2 = 0.62831853071795 86E1;" }}{PARA 6 "" 1 "" {TEXT -1 17 " x = 0.1E1*xx;" }}{PARA 6 "" 1 "" {TEXT -1 62 " if( 0.471238898038469E1 < x || x < -0.1570796326 794897E1 )" }}{PARA 6 "" 1 "" {TEXT -1 7 " \{" }}{PARA 6 "" 1 "" {TEXT -1 30 " k = floor(x/pi2+0.25);" }}{PARA 6 "" 1 "" {TEXT -1 20 " x += -k*pi2;" }}{PARA 6 "" 1 "" {TEXT -1 7 " \}" } }{PARA 6 "" 1 "" {TEXT -1 34 " if( 0.1570796326794897E1 < x )" }} {PARA 6 "" 1 "" {TEXT -1 15 " x = pi-x;" }}{PARA 6 "" 1 "" {TEXT -1 12 " z = x*x;" }}{PARA 6 "" 1 "" {TEXT -1 77 " return(((((((( (b17*z+b15)*z+b13)*z+b11)*z+b9)*z+b7)*z+b5)*z+b3)*z+b1)*x);" }}{PARA 6 "" 1 "" {TEXT -1 3 " \}" }}{PARA 6 "" 1 "" {TEXT -1 1 "\}" }}{PARA 6 "" 1 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 46 "A procedur e for evaluating the sine function: " }{TEXT 0 4 "sine" }{TEXT -1 1 " \+ " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 11 "sine: usage" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 262 20 "Calling Sequence: " }{TEXT -1 10 "sine( x ) " }{TEXT 263 1 "\n" }{TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 15 "Parameters: " }{TEXT 264 21 "x - a real constant" }}{PARA 0 " " 0 "" {TEXT -1 5 " " }}{PARA 0 "" 0 "" {TEXT 267 12 "Description: " }{TEXT -1 1 " " }{TEXT 266 14 "The procedure " }{TEXT 0 4 "sine" } {TEXT 265 40 " calculates the sine of a real number x." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 259 16 "How to activate:" }{TEXT 256 1 "\n" }{TEXT -1 154 "To ma ke the procedure active open the subsection, place the cursor anywhere after the prompt [ > and press [Enter].\nYou can then close up the s ubsection." }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 20 "sine: implementatio n" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3150 "sine := proc(x::algebraic)\n if nargs <> 1 then\n error \"expecting 1 argument, got %1\", nargs;\n end if;\n i f type(x,float) then\n evalf('sine'(x))\n else\n 'sine'(x) \n end if;\nend proc:\n\n`evalf/sine` := proc(xx)\n local x,z,pi2, term,eps,k,even,maxit,saveDigits,\n extraDigits,sum,pi,hfDigits;\n\n if xx=0 then return xx end if;\n if not type(xx,realcons) then re turn 'sine'(xx) end if;\n\n # Use the fixed precision procedure for \+ low precision values\n hfDigits := trunc(evalhf(Digits));\n if Dig its<=hfDigits then\n x := evalf(xx,hfDigits+2);\n if max(ilo g10(x),0)<=3 then\n return evalf(evalhf(sine16(x)))\n end if;\n end if;\n\n # increase precision \n saveDigits := Digits ;\n Digits := Digits+length(Digits)+1;\n x := evalf(xx);\n # arg ument reduction involves loss of precision\n # increase precision fu rther when x has large magnitude\n extraDigits := max(ilog10(x),0); \n if extraDigits>0 then\n Digits := Digits+extraDigits;\n \+ x := evalf(xx)\n end if;\n \n pi := evalf(Pi); # Maple evaluate s Pi rapidly\n \n # Reduce the range to -Pi/2<=x<=3*Pi/2\n if x>4.7123889803846898577 or x<-1.5707963267948966192 then\n pi2 : = pi+pi;\n\n # Determine the number of multiples of 2*Pi to add o r subtract.\n k := floor(x/pi2+0.25);\n x := x - k*pi2;\n \+ end if;\n \n # If x>Pi/2, replace x by Pi-x so that abs(x)<=Pi/2\n if x>1.5707963267948966192 then x := pi-x end if;\n\n Digits := D igits - extraDigits;\n\n if saveDigits<=evalhf(Digits) then\n # Use the fixed precision procedure\n return evalf(evalhf(sine16(x )));\n end if;\n\n # Initialisation for Maclaurin series loop\n \+ eps := Float(1,-saveDigits);\n maxit := Digits*4;\n\n # calculate \+ sin(x)\n term := x;\n sum := term;\n z := x*x;\n even := false ; \n for k from 2 to maxit by 2 do\n term := term*z/(k*(k+1)); \n if even then\n sum := sum + term;\n else\n \+ sum := sum - term;\n end if;\n if abs(term)<=eps*abs(sum) \+ then break end if;\n even := not even;\n end do;\n\n Digits : = saveDigits;\n evalf(sum);\nend proc: # of sine\n\n# procedure for \+ default and/or low precision\nsine16 := proc(xx)\n local x,z,k,b1,b3 ,b5,b7,b9,b11,b13,b15,b17,pi,pi2;\n\n # coeffs in poly approx for si n(x)\n b1 := .99999999999999999979;\n b3 := -.16666666666666665309 ;\n b5 := .83333333333331865183e-2;\n b7 := -.19841269841208718707 e-3;\n b9 := .27557319211236537590e-5;\n b11 := -.2505210689116870 3345e-7;\n b13 := .16058940907182888500e-9;\n b15 := -.76430272736 122038706e-12;\n b17 := .27215821926997074056e-14;\n \n pi := 3. 141592653589793238463;\n pi2 := 6.283185307179586476925;\n\n x := \+ evalf(xx);\n \n # Reduce the range to -Pi/2<=x<=3*Pi/2\n if x >4.712388980384690 or x<-1.570796326794897 then\n # Determine the number of multiples of 2*Pi to add or subtract.\n k := floor(x/p i2+0.25);\n x := x - k*pi2;\n end if;\n\n # If x>Pi/2, replac e x by Pi - x so that abs(x)<=Pi/2\n if x>1.5707963267948966192 then x := pi-x end if;\n\n z := x*x;\n ((((((((b17*z+b15)*z+b13)*z+b11 )*\n z+b9)*z+b7)*z+b5)*z+b3)*z+b1)*x;\nend proc: # of sin16 " }}}{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 4 "sine" }{TEXT -1 10 ": examples" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 " " {TEXT -1 21 "Testing the procedure" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 96 "xx := evalf(570000*Pi/7,40 );\nevalf(sine(xx),20);\nevalf(sin(xx),20);\nevalf(evalf(sin(xx),25),2 0);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"zG$\"Ig&[BXq1/\"e>8N " 0 "" {MPLTEXT 1 0 81 "xx := 2/3*Pi;\nevalf(sine(xx),20);\nevalf(sin(xx),20) ;\nevalf(evalf(sin(xx),25),20);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%# xxG,$%#PiG#\"\"#\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"5wY'QWy.a- m)!#?" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"5vY'QWy.a-m)!#?" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"5wY'QWy.a-m)!#?" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 69 "xx := evalf( 10^300);\nevalf(evalf(sin(xx),30),12);\nevalf(sine(xx),12);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#xxG$\"+++++5\"$\"H" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!-g^U]d)*!#7" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!-g^U ]d)*!#7" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "plot(sine(x),x=-20..20);" }}{PARA 13 "" 1 "" {GLPLOT2D 454 164 164 {PLOTDATA 2 "6%-%'CURVESG6$7j\\l7$$!+c`F(*>!\")$ !+I**)[,*!#57$$!+72b%*>F*$!+(RNO*))F-7$$!+og#=*>F*$!+=*ydw)F-7$$!+B95* )>F*$!+_`TJ')F-7$$!+M@l$)>F*$!+x3dV$)F-7$$!+YG?y>F*$!+ml&4.)F-7$$!+pUI n>F*$!+y7?NtF-7$$!+#p0k&>F*$!+CaS_lF-7$$!+:r]X>F*$!+sx&=p&F-7$$!+Q&3Y$ >F*$!+2(pPw%F-7$$!+g*4P#>F*$!+kR:zPF-7$$!+$Q6G\">F*$!+=Vp\\FF-7$$!+'zX Q*=F*$!+Xx\\y))!#67$$!+3-)[(=F*$\"+PY$e+\"F-7$$!+@Y\"f&=F*$\"+Z![M'GF- 7$$!+M!\\p$=F*$\"+]MP=YF-7$$!+[-i:=F*$\"+n#*>\"R'F-7$$!+h9H%z\"F*$\"+( 4zV(yF-7$$!+uE'Hx\"F*$\"+cep+!*F-7$$!+))Qj^(*F-7$$!+YjEY< F*$\"+.HPJ)*F-7$$!+/))*3u\"F*$\"+NDK:**F-7$$!+i7`N$Q(***F-7$$!+yhzCPz)\\F-7$$!+5HL7;F*$\"+BoCNSF-7$$!+[)[;g\"F*$\"+^\"Ql.$F-7$$!+'yk 4f\"F*$\"+01?.?F-7$$!+C2G!e\"F*$\"+3V=q%*Fdo7$$!+Q(p/c\"F*$!+1X#3.\"F- 7$$!+_(e1a\"F*$!+)GU$oHF-7$$!+mx%3_\"F*$!+P0u*y%F-7$$!+\"yO5]\"F*$!+9t wBkF-7$$!+_O_![\"F*$!+#p*=]yF-7$$!+C0,g9F*$!+\"zTu%*)F-7$$!+'R(\\R9F*$ !+nU^p'*F-7$$!+oU)*=9F*$!+S&Hh)**F-7$$!+\"f!o89F*$!+[$*******F-7$$!+9p P39F*$!+hnu&)**F-7$$!+QK2.9F*$!+s=TV**F-7$$!+h&pxR\"F*$!+?P6t)*F-7$$!+ 3A;(Q\"F*$!+Ml\\\\'*F-7$$!+a[bw8F*$!+g)3uJ*F-7$$!+[,Mb8F*$!+?;$RM)F-7$ $!+Ta7M8F*$!+=0L'*pF-7$$!+q(yHJ\"F*$!+WByS`F-7$$!++@$=H\"F*$!+KHHZMF-7 $$!+k(e7G\"F*$!+p#otV#F-7$$!+Haoq7F*$!+9$3(F-7$$!*q)>'*** F*$\"+biF3aF-7$$!+vE\"z))*!\"*$\"+(*yanWF-7$$!+]miz(*Fibl$\"+_[[uMF-7$ $!+D1Mr'*Fibl$\"+p-sSCF-7$$!++Y0j&*Fibl$\"+*3k$y8F-7$$!+v&oZX*Fibl$\"+ m=h)*HFdo7$$!+]D[Y$*Fibl$!+CTa@yFdo7$$!+Dl>Q#*Fibl$!+Mv+b=F-7$$!*]5*H \"*F*$!+Q.81HF-7$$!++K?@*)Fibl$!+khfD[F-7$$!++f\\7()Fibl$!+,qiNlF-7$$! ++')y.&)Fibl$!+`g+izF-7$$!*I\"3&H)F*$!+^s#G/*F-7$$!+y]b0\")Fibl$!+i%>_ o*F-7$$!+b)Gg\"zFibl$!+()ov!)**F-7$$!+WdE@yFibl$!+I)[Y***F-7$$!+LE]ExF ibl$!++b&)=**F-7$$!+@&R(F-7$$!+&)QctpFibl$!+K6HojF- 7$$!+!Q\")3'oFibl$!+]L&4Y&F-7$$!+v))>[nFibl$!+'G\\V[%F-7$$!*P;bj'F*$!+ 1h'3X$F-7$$!+XEgWkFibl$!+2G<2;F-7$$!+?*)o`iFibl$\"+@5@\\HFdo7$$!+&>vF1 'Fibl$\"+@$)H'=#F-7$$!*Zh=(eF*$\"+q4B)*RF-7$$!+BMy\\cFibl$\"+'f,*=fF-7 $$!+v`qFaFibl$\"+'pd)[vF-7$$!+Gti0_Fibl$\"+Y=/3))F-7$$!*G\\N)\\F*$\"+$ f2Yj*F-7$$!+H4E&)[Fibl$\"++#[4&)*F-7$$!+yD(py%Fibl$\"+E$*>s**F-7$$!+FU o)o%Fibl$\"+b0>(***F-7$$!+veR!f%Fibl$\"+]1oD**F-7$$!+t\">QR%Fibl$\"+zL %o\\*F-7$$!*ZUs>%F*$\"+:b?-()F-7$$!+tmc\")RFibl$\"+'ydiW(F-7$$!+v3*ew$ Fibl$\"+C,GXeF-7$$!+xH0eOFibl$\"+AB0Q\\F-7$$!+y]@]NFibl$\"+paXtRF-7$$! +zrPUMFibl$\"+9gpiHF-7$$!*GRXL$F*$\"+0n^<>F-7$$!+*4_=B$Fibl$\"+aTp8!*F do7$$!+=\\;HJFibl$!+o:uU7Fdo7$$!+PxZEIFibl$!+_%3'[6F-7$$!+b0zBHFibl$!+ 8<%3;#F-7$$!+$>;%=FFibl$!+@ye1TF-7$$!*$=/8DF*$!+`;tzeF-7$$!+F_v)H#Fibl $!+m*R`Y(F-7$$!+D'oW3#Fibl$!+W*e%4()F-7$$!+A?=q=Fibl$!+$[y^b*F-7$$!*U& *el\"F*$!+oD\"Q'**F-7$$!+AW]d:Fibl$!+Rm6****F-7$$!+DM6f9Fibl$!+W%*pP** F-7$$!+GCsg8Fibl$!+r]:!y*F-7$$!+I9Li7Fibl$!+Tu+G&*F-7$$!+N%\\b1\"Fibl$ !+(**\\0v)F-7$$!)Wn(o)F*$!+#pN`j(F-7$$!+]Z6llF-$!+#>sN5'F-7$$!++^bUWF- $!+lx&yH%F-7$$!+v_F\"Q$F-$!+kA@BF-$!+j&R#*H#F-7$$!+Dcre7 F-$!+#[%Rb7F-7$$!(eV(>F*$!+K(HU(>Fdo7$$\"+?mN\\!*Fdo$\"+%o5q.*Fdo7$$\" +DrI2?F-$\"+YU&Q*>F-7$$\"+(ey'4JF-$\"+x@!)fIF-7$$\"+]+07UF-$\"+NVg)3%F -7$$\"+vHz;kF-$\"+hbT&)fF-7$$\")f`@')F*$\"+s)eCf(F-7$$\"+I1+Y7Fibl$\"+ C%frZ*F-7$$\"*nZ)H;F*$\"+g(pD)**F-7$$\"+L.8P=Fibl$\"+PDUZ'*F-7$$\"+&*H TW?Fibl$\"+9_C**))F-7$$\"+ecp^AFibl$\"+7\"p+x(F-7$$\"*Ky*eCF*$\"+uqB3j F-7$$\"+b*\\gc#Fibl$\"+\"R,HW&F-7$$\"+!f@Jn#Fibl$\"+`gA:XF-7$$\"+DK>!y #Fibl$\"+(3Oe`$F-7$$\"+g[E()GFibl$\"+A)[f^#F-7$$\"+&\\OV*HFibl$\"+BaCn 9F-7$$\"+I\"395$Fibl$\"+]4P(F-7$$\"*0TN:%F*$!+@^my%)F-7$$\"+n0CcVFibl$!+KpYs$*F-7$$\"+&3S*eX Fibl$!+=!)\\#))*F-7$$\"+k\\h4YFibl$!+xRBZ**F-7$$\"+V)*GgYFibl$!+p9V')* *F-7$$\"+BZ'4r%Fibl$!+d)*)*****F-7$$\"+-'R;w%Fibl$!+LV(y)**F-7$$\"+h$* )H'[Fibl$!++=\"o))*F-7$$\"*7RV'\\F*$!+t5G%o*F-7$$\"+yBS*=&Fibl$!+c6q$) ))F-7$$\"+NcY9aFibl$!+9s-NwF-7$$\"+$*)G&RcFibl$!+rBC,gF-7$$\"*:#fkeF*$ !+tZvkSF-7$$\"+BoqlfFibl$!+50s@JF-7$$\"+&\\@o1'Fibl$!+=kzY@F-7$$\"+oh$ z;'Fibl$!+%yT*\\6F-7$$\"+S30piFibl$!+b'*R89Fdo7$$\"+7b;qjFibl$\"+qq0(o )Fdo7$$\"+&=!GrkFibl$\"+`r()p=F-7$$\"+d[RslFibl$\"+=p%>&GF-7$$\"*`4Nn' F*$\"+=F)[!QF-7$$\"+BDV*)oFibl$\"+8Z(yp&F-7$$\"+:bN0rFibl$\"+'oYiK(F-7 $$\"+3&y7K(Fibl$\"+(*RP9')F-7$$\"*],s`(F*$\"+zNV-&*F-7$$\"+h1.NwFibl$ \"+6%e7w*F-7$$\"+A)fGt(Fibl$\"+mrtE**F-7$$\"+$)*)oIyFibl$\"+&Q(G(***F- 7$$\"+X\"=&GzFibl$\"+,WBs**F-7$$\"+nk $)F*$\"+dmQM*)F-7$$\"+<5uL&)Fibl$\"+X*Rsx(F-7$$\"+XskZ()Fibl$\"+;OfliF -7$$\"+e.ga))Fibl$\"+Uc\"yR&F-7$$\"+sMbh*)Fibl$\"+_5NoWF-7$$\"+'e1&o!* Fibl$\"+T=#y[$F-7$$\"*qfa<*F*$\"+iNVnCF-7$$\"+XU4w#*Fibl$\"+'*\\O\"[\" F-7$$\"+!zGnP*Fibl$\"+?%oI![Fdo7$$\"+NLOx%*Fibl$!+bU6c_Fdo7$$\"+!)y*zd *Fibl$!+`6@E:F-7$$\"+qpEz(*Fibl$!+7>6rMF-7$$\"*1O0)**F*$!+wX(eF&F-7$$ \"+D?4>5F*$!+RdgLpF-7$$\"+W/8S5F*$!+\\`d&G)F-7$$\"+j)o61\"F*$!+'ej@F*F -7$$\"+#G2A3\"F*$!+)Rj)\\)*F-7$$\"+2&\\t3\"F*$!+BedD**F-7$$\"+K<\\#4\" F*$!+[$[](**F-7$$\"+dRj(4\"F*$!+&=]\")***F-7$$\"+#=wF5\"F*$!+h-#[***F- 7$$\"+K1186F*$!+%>q*3**F-7$$\"+#3XL7\"F*$!+%Q0%=(*F-7$$\"+#)R\"R9\"F*$ !+W@FK!*F-7$$\"+$)G[k6F*$!+\"=Z`'zF-7$$\"+;m,'=\"F*$!+co]*['F-7$$\"+[. b27F*$!+B\"3Rr%F-7$$\"+9sJ=7F*$!+r()))QPF-7$$\"+!3%3H7F*$!+b!o0s#F-7$$ \"+Y4&)R7F*$!++&R2n\"F-7$$\"+7yh]7F*$!+M`h:gFdo7$$\"+%e()4E\"F*$\"+=.: \\VFdo7$$\"+ctNr7F*$\"+^!>nY\"F-7$$\"+Grs\"G\"F*$\"+\\_w#[#F-7$$\"++p4 #H\"F*$\"+\\w8sMF-7$$\"+Wk$GJ\"F*$\"+*>W(G`F-7$$\"+()fdL8F*$\"+*[mp&pF -7$$\"+m^ya8F*$\"+_V@8$)F-7$$\"+WV*fP\"F*$\"+]\"4pH*F-7$$\"+M*)f'Q\"F* $\"+\\7cM'*F-7$$\"+BN?(R\"F*$\"+Hr'R')*F-7$$\"+=e]-9F*$\"+>RAP**F-7$$ \"+7\"3yS\"F*$\"+1%\\D)**F-7$$\"+2/689F*$\"+4i\")****F-7$$\"+-FT=9F*$ \"+\"yv*))**F-7$$\"+eiWR9F*$\"+@o\"3n*F-7$$\"+9)z/Y\"F*$\"+MeQE*)F-7$$ \"+qL^\"[\"F*$\"+&)f\\)y(F-7$$\"+Epa-:F*$\"+!R.tI'F-7$$\"+!eu=_\"F*$\" +/HN*p%F-7$$\"+LA?T:F*$\"+F,S;HF-7$$\"+'))H0c\"F*$\"+i:%[-\"F-7$$\"+Sv &)z:F*$!+\"p=)[!*Fdo7$$\"+wL$4f\"F*$!+tJ7+?F-7$$\"+7#4?g\"F*$!+4K&32$F -7$$\"+[]38;F*$!+7.&R5%F-7$$\"+%)3;C;F*$!+.Sv'3&F-7$$\"+cDJY;F*$!+B&oS &oF-7$$\"+GUYo;F*$!+!HHkG)F-7$$\"+[pF)o\"F*$!+x5:E#*F-7$$\"+o'*33!*)*F-7$$\"+Gg*zr\"F*$!+lJB^**F-7$$\"+3 #\\Hs\"F*$!+:g'y)**F-7$$\"+)Q-zs\"F*$!+^'*******F-7$$\"+ob&Gt\"F*$!+6V g()**F-7$$\"+[(3yt\"F*$!++/r]**F-7$$\"+G>wUV_=F*$!+*QK`>$F- 7$$\"+S2ls=F*$!+[CQF7F-7$$\"+d,w#)=F*$!+%ze_>#Fdo7$$\"+u&pG*=F*$\"+3Ms 0zFdo7$$\"+!**yH!>F*$\"+owf#z\"F-7$$\"+2%)38>F*$\"+(G=jx#F-7$$\"+cB&R# >F*$\"+M[e,QF-7$$\"+1j\"[$>F*$\"+Hs-#y%F-7$$\"+b-oX>F*$\"+g\\31dF-7$$ \"+/Uac>F*$\"+8E'Gc'F-7$$\"+`\"3u'>F*$\"+zzDUtF-7$$\"+-@Fy>F*$\"+f73N! )F-7$$\"+wSq$)>F*$\"+@HVY$)F-7$$\"+^g8*)>F*$\"+=M;L')F-7$$\"+Q?&=*>F*$ \"+a%Gqw)F-7$$\"+E!oX*>F*$\"+hoU%*))F-7$$\"+8SG(*>F*$\"+tXE:!*F-7$%%FA ILGFgdp-%'COLOURG6&%$RGBG$\"#5!\"\"$\"\"!F`epF_ep-%+AXESLABELSG6$Q\"x6 \"Q!Feep-%%VIEWG6$;$!#?F`ep$\"#?F`ep%(DEFAULTG" 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 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 18 "Speed comparisons " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 148 "st := time( ):\nfor i to 500 do sine(rand()*Float(1,-11)) end do:\ntime()-st;\nst \+ := time():\nfor i to 500 do sin(rand()*Float(1,-11)) end do:\ntime()-s t;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"$e)!\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"$e#!\"$" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 186 "st := time():\nDigits := 50:\nfor \+ i to 100 do t := sine(rand()*Float(1,-11)) end do:\ntime()-st;\nst := \+ time():\nfor i to 100 do t := sin(rand()*Float(1,-11)) end do:\ntime() -st;\nDigits := 10:" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"%'G\"!\"$" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"$y#!\"$" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 1" }}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "plot([sine(Pi*x),x],x=0. .1);" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6&-%'CURVE SG6$7S7$$\"\"!F)F(7$$\"+;arz@!#6$\"+>uUUoF-7$$\"+XTFwSF-$\"+&*>5x7!#57 $$\"+\"z_\"4iF-$\"+icJQ>F57$$\"+S&phN)F-$\"+N&>^f#F57$$\"+*=)H\\5F5$\" +q\")3PKF57$$\"+[!3uC\"F5$\"+P+J>QF57$$\"+J$RDX\"F5$\"+_Vb1WF57$$\"+)R 'ok;F5$\"+=8h%*\\F57$$\"+1J:w=F5$\"+RSrebF57$$\"+3En$4#F5$\"+n;N8hF57$ $\"+/RE&G#F5$\"+h;KylF57$$\"+D.&4]#F5$\"+)eyJ2(F57$$\"+vB_Y2aF5$\"+b;==**F 57$$\"+yXu9cF5$\"+zt39)*F57$$\"+\\y))GeF5$\"+$[jGm*F57$$\"+i_QQgF5$\"+ I*4EZ*F57$$\"+!y%3TiF5$\"+osZ\\#*F57$$\"+O![hY'F5$\"+R>%y&*)F57$$\"+#Q x$omF5$\"+-ccd')F57$$\"+u.I%)oF5$\"+7!G%)H)F57$$\"+(pe*zqF5$\"+pG)*RzF 57$$\"+C\\'QH(F5$\"+@G%Q^(F57$$\"+8S8&\\(F5$\"+^!p=3(F57$$\"+0#=bq(F5$ \"+L[5+mF57$$\"+2s?6zF5$\"+\\C@,hF57$$\"+IXaE\")F5$\"+]rm^bF57$$\"+l*R RL)F5$\"+Z%\\$)*\\F57$$\"+`<.Y&)F5$\"+UOe5WF57$$\"+8tOc()F5$\"+_eM3QF5 7$$\"+\\Qk\\*)F5$\"+>FBSKF57$$\"+p0;r\"*F5$\"+D4buDF57$$\"+lxGp$*F5$\" +n2]o>F57$$\"+!oK0e*F5$\"+bY)RJ\"F57$$\"+<5s#y*F5$\"+z3s?oF-7$$\"\"\"F )F(-%'COLOURG6&%$RGBG$\"#5!\"\"F(F(-F$6$7SF'7$$\"3emmm;arz@!#>F_[l7$$ \"3[LL$e9ui2%Fa[lFc[l7$$\"3nmmm\"z_\"4iFa[lFf[l7$$\"3[mmmT&phN)Fa[lFi[ l7$$\"3CLLe*=)H\\5!#=F\\\\l7$$\"3gmm\"z/3uC\"F^\\lF`\\l7$$\"3%)***\\7L RDX\"F^\\lFc\\l7$$\"3]mm\"zR'ok;F^\\lFf\\l7$$\"3w***\\i5`h(=F^\\lFi\\l 7$$\"3WLLL3En$4#F^\\lF\\]l7$$\"3qmm;/RE&G#F^\\lF_]l7$$\"3\")*****\\K]4 ]#F^\\lFb]l7$$\"3$******\\PAvr#F^\\lFe]l7$$\"3)******\\nHi#HF^\\lFh]l7 $$\"3jmm\"z*ev:JF^\\lF[^l7$$\"3?LLL347TLF^\\lF^^l7$$\"3,LLLLY.KNF^\\lF a^l7$$\"3w***\\7o7Tv$F^\\lFd^l7$$\"3'GLLLQ*o]RF^\\lFg^l7$$\"3A++D\"=lj ;%F^\\lFj^l7$$\"31++vV&RY2aF^\\lF\\`l7$$\"39mm;zXu9cF^\\lF_`l7$$\"3l******\\y))G eF^\\lFb`l7$$\"3'*)***\\i_QQgF^\\lFe`l7$$\"3@***\\7y%3TiF^\\lFh`l7$$\" 35****\\P![hY'F^\\lF[al7$$\"3kKLL$Qx$omF^\\lF^al7$$\"3!)*****\\P+V)oF^ \\lFaal7$$\"3?mm\"zpe*zqF^\\lFdal7$$\"3%)*****\\#\\'QH(F^\\lFgal7$$\"3 GKLe9S8&\\(F^\\lFjal7$$\"3R***\\i?=bq(F^\\lF]bl7$$\"3\"HLL$3s?6zF^\\lF `bl7$$\"3a***\\7`Wl7)F^\\lFcbl7$$\"3#pmmm'*RRL)F^\\lFfbl7$$\"3Qmm;a<.Y &)F^\\lFibl7$$\"3=LLe9tOc()F^\\lF\\cl7$$\"3u******\\Qk\\*)F^\\lF_cl7$$ \"3CLL$3dg6<*F^\\lFbcl7$$\"3ImmmmxGp$*F^\\lFecl7$$\"3A++D\"oK0e*F^\\lF hcl7$$\"3A++v=5s#y*F^\\lF[dl7$FbzFbz-Fez6&FgzF(FhzF(-%+AXESLABELSG6$Q \"x6\"Q!Fddl-%%VIEWG6$;F(Fbz%(DEFAULTG" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "fsolve(si ne(Pi*x)=x,x=0.75);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+#[W[O(!#5" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "fsolve(sin(Pi*x)=x,x=0.75);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #$\"+#[W[O(!#5" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Exam ple 2" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "plot(sine(sqrt(x)+1),x=0..1.2);" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6%-%'CURVESG6$7in7$$\"\"!F)$\"+[)4Z T)!#57$$\"+5G$R<)!#8$\"+'*Gsl&)F,7$$\"+ilyM;!#7$\"+Q3BE')F,7$$\"+V)z@X #F6$\"+w.%=n)F,7$$\"+DJdpKF6$\"+_[t4()F,7$$\"+(ofV!\\F6$\"+?X:s()F,7$$ \"+]i9RlF6$\"+.(3)*F6$\"+K.r2*)F,7$$\"+]#HyI\"!#6$\"+* \\!Hw*)F,7$$\"+vQuh>FU$\"+n\\f'3*F,7$$\"++&ech#FU$\"+Ve#\\<*F,7$$\"+QP f`PFU$\"+:>`(H*F,7$$\"+v*G:*[FU$\"+!)4+&R*F,7$$\"+jhDrhFU$\"+sE&[[*F,7 $$\"+]L)4X(FU$\"+x4vf&*F,7$$\"++M>R()FU$\"+ikxB'*F,7$$\"+X.u-5F,$\"+C) 4)y'*F,7$$\"+Gy:f7F,$\"+LBtn(*F,7$$\"+e'*)o\\\"F,$\"+S/QJ)*F,7$$\"+)>Z Iu\"F,$\"+,$GF))*F,7$$\"+yOi(*>F,$\"+NdSB**F,7$$\"+GPQ^AF,$\"+q)eO&**F ,7$$\"+IrS7DF,$\"+m(=e(**F,7$$\"+&o;Bu#F,$\"+J#)*)))**F,7$$\"+!RS6+$F, $\"+'3it***F,7$$\"+]o-hKF,$\"+o'*******F,7$$\"+5cZ6NF,$\"+%4Gw***F,7$$ \"+yq!*QPF,$\"+:5t\"***F,7$$\"+!4X$4SF,$\"+L!R0)**F,7$$\"+g:WQUF,$\"+J v#y'**F,7$$\"+=_$\\]%F,$\"+F(\\'\\**F,7$$\"+gs#3u%F,$\"+6hwI**F,7$$\"+ =#Q'**\\F,$\"+?eF2**F,7$$\"+_u3Y_F,$\"+=hT#))*F,7$$\"+v8B.bF,$\"+Y03a) *F,7$$\"+o(p$RdF,$\"+*>ag#)*F,7$$\"+Dp2%*fF,$\"+'>=Qz*F,7$$\"+ygkeiF,$ \"+fiFe(*F,7$$\"+-V&*)['F,$\"+o)Qds*F,7$$\"+&\\$pPnF,$\"+f'H!*o*F,7$$ \"+?am%*pF,$\"+(f'\\\\'*F,7$$\"+:B1YsF,$\"+'pK$4'*F,7$$\"+Q6:p&*F,7$$\"+XwPfxF,$\"+p35B&*F,7$$\"+gG0-!)F,$\"+o^]![*F,7$$\"+]/;h# )F,$\"+()H#QV*F,7$$\"+Q/&f\\)F,$\"+&)\\]!R*F,7$$\"+5zj_()F,$\"+[v4U$*F ,7$$\"+=3;%**)F,$\"+#\\)f&H*F,7$$\"+[=iY#*F,$\"+_m0Y#*F,7$$\"+]'[M\\*F ,$\"+p%Rn>*F,7$$\"+QM&=v*F,$\"+k7AW\"*F,7$$\"+'zs++\"!\"*$\"+(zAG4*F,7 $$\"+5Q_D5F\\\\l$\"+&)3ZR!*F,7$$\"+ySw]5F\\\\l$\"+>$4e)*)F,7$$\"+is&R2 \"F\\\\l$\"+K-(e$*)F,7$$\"+o#R05\"F\\\\l$\"+\"oEz())F,7$$\"+KXJC6F\\\\ l$\"+8%*[D))F,7$$\"+ARm\\6F\\\\l$\"+3H(*o()F,7$$\"+Al#R<\"F\\\\l$\"+)) zJ9()F,7$$\"#7!\"\"$\"+-#**\\l)F,-%'COLOURG6&%$RGBG$\"#5Fe^lF(F(-%+AXE SLABELSG6$Q\"x6\"Q!Fb_l-%%VIEWG6$;F(Fc^l%(DEFAULTG" 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 26 "We calculate the integral " }{XPPEDIT 18 0 "Int(sin(sqrt(x)+1),x = 0 .. 1);" "6#-%$IntG6$-%$sin G6#,&-%%sqrtG6#%\"xG\"\"\"F.F./F-;\"\"!F." }{TEXT -1 21 " using the pr ocedure " }{TEXT 0 4 "sine" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "Int(sine(sqrt(x)+1 ),x=0..1);\nevalf(%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%$IntG6$-%%s ineG6#,&*$-%%sqrtG6#%\"xG\"\"\"F/F/F//F.;\"\"!F/" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+rbYz'*!#5" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{MARK "4 0 \+ 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }