{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 "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 "" -1 259 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 260 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 261 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{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 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 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "Purple Emphasis" -1 267 "" 0 0 102 0 230 1 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "Red Emphasis" -1 268 "Times" 1 12 255 0 0 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "Dark Red Emph asis" -1 269 "Times" 1 12 128 0 0 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" 258 270 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" 258 271 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "Grey Emphasis" -1 272 "Times" 1 12 96 52 84 1 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 273 "System" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 274 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 275 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 276 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 277 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 278 "System" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 279 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 280 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 281 "" 0 1 0 0 0 0 1 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 }{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 "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 "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 Output" -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 "Bulle t 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 "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 14 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Normal " -1 258 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 }} {SECT 0 {PARA 3 "" 0 "" {TEXT -1 36 "Random numbers, vectors and matri ces" }}{PARA 0 "" 0 "" {TEXT -1 37 "by Peter Stone, Nanaimo, B.C., Can ada" }}{PARA 0 "" 0 "" {TEXT -1 19 "Version: 24.3.2007" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart; " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "with(LinearAlgebra):" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 40 "load extra procedures for linear systems" }}{PARA 0 " " 0 "" {TEXT -1 17 "The Maple m-file " }{TEXT 272 8 "linsys.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 similar to the o ne that follows, where the file path gives its location." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "read \"K:\\\\Maple/procdrs/linsys.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 "Constructing random vectors and matrices" }}{PARA 0 "" 0 "" {TEXT -1 15 "The procedures " }{TEXT 0 12 "RandomVector" }{TEXT -1 5 " and " } {TEXT 0 12 "RandomMatrix" }{TEXT -1 8 " in the " }{TEXT 0 13 "LinearAl gebra" }{TEXT -1 60 " package can be used to construct vectors and mat rices with " }{TEXT 267 14 "random entries" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 108 "wit h(LinearAlgebra):\nA := RandomMatrix(3,2);\nB := RandomMatrix(3);\nb := RandomVector[column](3);\nB.A;\nB.b;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"AG-%'RTABLEG6$\"(_n\"y-%'MATRIXG6#7%7$\"#q!#87$\"#s\"#U7$!#y !#&*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"BG-%'RTABLEG6$\"(sy!z-%'MA TRIXG6#7%7%!#>\"#n\"#C7%!#Z\"#&)!#'*7%\"#m\"#6!#!*" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%\"bG-%'RTABLEG6$\"(3hm(-%'MATRIXG6#7%7#\"\"$7#!#<7# !#W" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\"(+M(z-%'MATRIXG6# 7%7$\"%A;\"$\"y7$\"&=.\"\"&,L\"7$\"&KC\"\"%a\")" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\"(on1)-%'MATRIXG6#7%7#!%_A7#\"%QE7#\"%rR" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 60 "The ty pe of random entries can be controlled by the option \"" }{TEXT 272 17 "generator=a . . b" }{TEXT -1 3 "\". " }}{PARA 0 "" 0 "" {TEXT -1 16 "The default is \"" }{TEXT 272 20 "generator=-99 . . 99" }{TEXT -1 31 "\" which gives 2 digit integers." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 24 "If the range delimiters " }{TEXT 272 1 "a" }{TEXT -1 5 " and " }{TEXT 272 1 "b" }{TEXT -1 5 " are " }{TEXT 267 22 "floating point numbers" }{TEXT -1 56 ", the resulting matrix w ill have floating point entries." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 59 "A := RandomMatrix(2,generato r=-9.0..9.0);\nB := A^(-1);\nA.B;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#> %\"AG-%'RTABLEG6$\"(o$)4)-%'MATRIXG6#7$7$$\"37Db!Hy@i^$!#<$\"3#zfJW\"o `(\\#!#=7$$!3ww3&H&**p$\\\"F0$!3=i!3IRh!fGF3" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"BG-%'RTABLEG6$\")72uE-%'MATRIXG6#7$7$$\"3nTDh^e-AX! #=$\"3S,mW*e@-&RF07$$!3IQ7BPg]iB!#<$!3AR;U0;UhbF6" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")W$*)p#-%'MATRIXG6#7$7$$\"\"\"\"\"!$\"338 .D\\gW?A!#L7$$!3ac^iCIA56F1F," }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 52 "Notice that, in general, the entries in t he product " }{XPPEDIT 18 0 "A*`.`*B;" "6#*(%\"AG\"\"\"%\".GF%%\"BGF% " }{TEXT -1 73 " are close, but not exactly equal to, the entries of t he identity matrix." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 42 " Procedures for generating random numbers: " }{TEXT 0 22 "randuniform,r andnormal" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 83 "The two procedures in this section construct random numbers which \+ are respectively:" }}{PARA 15 "" 0 "" {TEXT -1 47 "uniformly disribute d over a specified interval," }}{PARA 15 "" 0 "" {TEXT -1 66 "normally distributed about 0, with a specified standard deviation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }} }{SECT 1 {PARA 4 "" 0 "" {TEXT -1 18 "randuniform: usage" }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 262 18 "Ca lling Sequence:\n" }}{PARA 0 "" 0 "" {TEXT 263 2 " " }{TEXT -1 22 " \+ randuniform( rng ) " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 11 "Parameters:" }}{PARA 0 "" 0 "" {TEXT -1 72 " rng - range a..b for the random real number to lie inside." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 12 "Descrip tion:" }}{PARA 0 "" 0 "" {TEXT -1 14 "The procedure " }{TEXT 0 11 "ran duniform" }{TEXT -1 153 " constructs a procedure, say \"gen\", for gen erating random floating point numbers which lie in a specified interva l and have a specified number of digits." }}{PARA 0 "" 0 "" {TEXT -1 117 "Thus a sequence of calls to \"gen\" will provide numbers which ar e uniformly distributed within the specified interval." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 264 8 "Options:" }{TEXT -1 1 "\n" }}{PARA 0 "" 0 "" {TEXT -1 120 "numdigits=n\nThe number of digi ts in the random number to be generated. The default value is the curr ent value of Digits." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 17 "randnormal: usage" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 259 18 "Calling S equence:\n" }}{PARA 0 "" 0 "" {TEXT 260 2 " " }{TEXT -1 23 " randno rmal( sigma ) " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 11 "Parameters:" }}{PARA 0 "" 0 "" {TEXT -1 92 " sigma - \+ positive real constant giving the standard deviation of the normal dis tribution" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 12 "Description:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 " " {TEXT -1 14 "The procedure " }{TEXT 0 10 "randnormal" }{TEXT -1 184 " constructs a procedure, say \"gen\", for generating random floating \+ point numbers which are normally distributed with specified standard d eviation and have a specified number of digits." }}{PARA 0 "" 0 "" {TEXT -1 86 "Thus a sequence of calls to \"gen\" will provide numbers \+ which are normally distributed." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT 261 8 "Options:" }{TEXT -1 1 "\n" }}{PARA 0 "" 0 "" {TEXT -1 120 "numdigits=n\nThe number of digits in the random num ber to be generated. The default value is the current value of Digits. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT 267 16 "How to activate:" }{TEXT 256 1 "\n" } {TEXT -1 156 "To make the procedures active, open the subsection, plac e the cursor anywhere after the prompt [ > and press [Enter].\nYou ca n then close up the subsection." }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 39 "randuniform, randnormal: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 3366 "randuniform := p roc(rng::range)\n local nmdgts,t1,t2,a,b,Options;\n \n t1 := lhs (rng);\n t2 := rhs(rng);\n if type(t1,realcons) and type(t2,realco ns) \n and not has(\{t1,t2\},infinity) then\n a := evalf(t1) ;\n b := evalf(t2);\n if a>=b then\n error \"range m ust have left side less than right side\"\n end if;\n else\n \+ error \"the 1st argument, %1, is invalid .. it should be a range of finite real values\",rng;\n end if;\n\n nmdgts := Digits;\n if \+ nargs>1 then\n Options:=[args[2..nargs]];\n if not type(Opti ons,list(equation)) then\n error \"each optional argument afte r must be an equation\"\n end if;\n if hasoption(Options,'nu mdigits','nmdgts','Options') then\n if not type(nmdgts,posint ) then\n error \"\\\"numdigits\\\" must be a positive integ e\"\n end if; \n end if;\n if nops(Options)>0 then\n error \"%1 is not a valid option for %2\",op(1,Options),procn ame;\n end if;\n end if;\n\n proc()\n local saveDigits,c ount,rnd,pow,i;\n\n saveDigits := Digits;\n count := trunc(n mdgts/12);\n Digits := (count+1)*12;\n\n do\n pow := -12;\n rnd := rand()*Float(1,pow);\n for i from 1 to \+ count do\n pow := pow-12;\n rnd := rnd+rand()*Fl oat(1,pow);\n end do;\n if rnd<>0 and rnd<>1 then brea k end if;\n end do;\n \n Digits := saveDigits;\n retu rn evalf(a+(b-a)*rnd,nmdgts);\n end proc:\nend proc: # randuniform\n \nrandnormal := proc(sigma)\n local Options,nmdgts,s;\n\n s := sig ma;\n if not type(s,realcons) or signum(0,s,0)<=0 then\n error \+ \"the 1st argument, %1, is invalid .. it should be a positive real con stant\",s;\n end if; \n \n nmdgts := Digits;\n if nargs>1 then \n Options:=[args[2..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,'numdigits','nmdgts', 'Options') then\n if not type(nmdgts,posint) then\n \+ error \"\\\"numdigits\\\" must be a positive integer\"\n 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 i f;\n end if;\n\n proc()\n global iset,gset,dset;\n local x1,x2,y1,y2,pow,saveDigits,count,i;\n\n if iset<>1 or dset<>nmdg ts then\n # Get 2 uniform deviates in interval 0..1.\n \+ saveDigits := Digits;\n count := trunc(nmdgts/12);\n \+ Digits := (count+1)*12;\n pow := -12;\n x1 := rand()*F loat(1,pow);\n x2 := rand()*Float(1,pow);\n for i from 1 to count do\n pow := pow - 12;\n x1 := x1 + r and()*Float(1,pow);\n x2 := x2 + rand()*Float(1,pow);\n \+ end do;\n # Use Box-Muller transformation to get 2 normal deviates.\n x1 := rand()*Float(1,-12);\n x2 := rand() *Float(1,-12);\n y1 := evalf(s*sqrt(-2*ln(x1))*sin(2*Pi*x2)); \n y2 := evalf(s*sqrt(-2*ln(x1))*cos(2*Pi*x2));\n iset := 1; # Set flag.\n dset := nmdgts;\n gset := evalf(y 2,nmdgts); # Save one deviate for next time.\n Digits := saveD igits;\n return evalf(y1,nmdgts); # Return one deviate.\n \+ else\n iset := 0;\n return gset; # Return saved devia te.\n end if;\n end proc:\nend proc: # of randnormal" }}}{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 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 -1 0 "" }{TEXT 0 22 "randuni form,randnormal" }{TEXT -1 10 ": examples" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 "" {TEXT 0 11 "randuniform " }{TEXT -1 10 ": examples" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 6 "Since " }{TEXT 0 11 "randuniform" } {TEXT -1 40 " makes use of Maple's built-in function " }{TEXT 0 4 "ran d" }{TEXT -1 78 " for generating random12 digit integers, it can also \+ be seeded with a call to " }{TEXT 0 9 "randomize" }{TEXT -1 47 ". If y ou neglect to do this, you will generate " }{TEXT 267 25 "exactly the \+ same sequence" }{TEXT -1 35 " of random real numbers after each " } {TEXT 0 7 "restart" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "randomize():" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "randuni form(-50..50)();" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!+bU2F " 0 "" {MPLTEXT 1 0 55 "gen := randuniform(0..1000,numdigits=50):\ngen();\ngen();" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\"S*>6ha$)G(=eX:$QH9vj&3!fwr6'=c!#Z" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"Sc'*)Raf3eRC6#fE?V;7#)pf^))Rxo!#Z " }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 49 "We c an get a sequence of random numbers by using " }{TEXT 0 3 "seq" } {TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "seq(randuniform(-100..100)(),i=1..5);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6'$\"*INiU'!\"($\"*Kq_$zF%$\"*!R " 0 "" {MPLTEXT 1 0 40 "gen := randuniform(-100..100 ):'gen'()$5;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6'$!+#H$**>q!\")$\"*Hs^, (!\"($!+OTuK5F%$!+xD?Q#*F%$\"*r4sQ#F(" }}}{PARA 0 "" 0 "" {TEXT -1 0 " " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 " " 0 "" {TEXT 0 8 "randnorm" }{TEXT -1 10 ": examples" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 6 "Since " }{TEXT 0 11 "randnormal " }{TEXT -1 39 "makes use of Maple's built-in \+ function " }{TEXT 0 4 "rand" }{TEXT -1 78 " for generating random12 di git integers, it can also be seeded with a call to " }{TEXT 0 9 "rando mize" }{TEXT -1 47 ". If you neglect to do this, you will generate " } {TEXT 267 25 "exactly the same sequence" }{TEXT -1 35 " of random real numbers after each " }{TEXT 0 7 "restart" }{TEXT -1 1 "." }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "rando mize():" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 19 "Standard deviation " }{XPPEDIT 18 0 "sigma = 1;" "6#/%&sigmaG\"\" \"" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 16 "randnormal(1)();" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+0.*32$!#5" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 19 "Standard deviation " }{XPPEDIT 18 0 "sigm a = 1000;" "6#/%&sigmaG\"%+5" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 51 "gen := randnormal( 1000,numdigits=50):\ngen();\ngen();" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #$\"Su)R3[L[#3Y7#=_AkfK&)*eUg%**[3$!#Z" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#$!SBT*[-onU\"=%zFs*eg)yqqx4X[e\"\\!#[" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 49 "We can get a sequence of random numbers by using " }{TEXT 0 3 "seq" }{TEXT -1 1 "." }}{PARA 0 "" 0 " " {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "seq(randno rmal(100)(),i=1..5);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6'$\"+r])>(G!\"* $!+v'f2R#!\"($\"+#*\\lRi!\")$!+43IM;F($\"+[62D:F(" }}}{PARA 0 "" 0 "" {TEXT -1 120 "\nAlternatively, the expression sequence operator $ can \+ be used to obtain a sequence of calls to the generating function." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "gen := randnormal(100):\n'gen'()$5;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6'$\"+sF/(e\"!\")$\"+q%Q(*)))!\"*$\"+Wils[F($!+[`v$H)F($!+'o**p6'F %" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 69 "We \+ can change the mean of the distribution by introducing a constant." }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 19 "Standard \+ deviation " }{XPPEDIT 18 0 "sigma = 50;" "6#/%&sigmaG\"#]" }{TEXT -1 7 ", mean " }{XPPEDIT 18 0 "mu = 100;" "6#/%#muG\"$+\"" }{TEXT -1 1 ". " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "gen := proc() 100+randnormal(50)() end proc:\n'gen'()$5;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6'$\"+)o$=WS!\")$\"+l#oet)F%$\"+#37+K\"! \"($\"+'*))[j_F%$\"+0inp:F*" }}}{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 26 "Using M aple procedures in " }{TEXT 0 18 "stats[random, ...]" }{TEXT -1 28 " t o generate random numbers " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT -1 29 "We can use of the subpackage " } {TEXT 0 18 "stats[random, ...]" }{TEXT -1 73 " of the stats package to obtain random numbers with a given distribution." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 41 "The following command def ines a function " }{TEXT 0 3 "gen" }{TEXT -1 106 " which generates15 d igit random numbers which are normally distributed about 0 with standa rd deviation 10." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 52 "gen := stats[random,normald[0,10]]('generator[ 15]'):" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 43 "The generator can be seeded with a call to " }{TEXT 0 9 "randomize " }{TEXT -1 47 ". If you neglect to do this, you will generate " } {TEXT 267 25 "exactly the same sequence" }{TEXT -1 35 " of random real numbers after each " }{TEXT 0 7 "restart" }{TEXT -1 1 "." }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "rando mize():\nseq(gen(),i=1..5);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6'$!0-n:@ #phX!#9$!00bg.8^(oF%$\"0z#o+B0%p\"!#8$\"0uZeg([@WF%$\"0y]aVS`*>F*" }}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 41 "The follo wing command defines a function " }{TEXT 0 3 "gen" }{TEXT -1 103 " whi ch generates10 digit random numbers which are uniformly distributed in the interval from -10 to 10." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "gen := stats[random,uniform[ -10,10]]('generator'):" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "randomize():\nseq(gen(),i=1..5);" } }{PARA 11 "" 1 "" {XPPMATH 20 "6'$\"*Sl%HU!\")$!+gv%G<(!\"*$!++>QP#*F( $!+GHGIjF($!+Ow]+*)F(" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 24 "Graphing distributions: " }{TEXT 0 16 "distributiondata" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 179 "The pr ocedure in this section generates the data needed to graph the distrib ution polygon for a random number generator and can be used to illustr ate the nature of the procedures " }{TEXT 0 11 "randuniform" }{TEXT -1 5 " and " }{TEXT 0 10 "randnormal" }{TEXT -1 25 " of the previous s ection." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 23 "distributiondata: usage" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 265 18 "Calling Sequence:\n" }} {PARA 0 "" 0 "" {TEXT 266 2 " " }{TEXT -1 38 " distributiondata( ge n, rng , n, m) " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 11 "Parameters:" }}{PARA 0 "" 0 "" {TEXT -1 185 " gen \+ - a procedure (with no arguments) which generates a single float ing point number on each call.\n rng - range a..b for the random real number to lie inside." }}{PARA 0 "" 0 "" {TEXT -1 97 " \+ n - number of equally spaced subintervals into which the range is to be divided." }}{PARA 0 "" 0 "" {TEXT -1 32 " m \+ - sample size." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 256 "" 0 "" {TEXT -1 12 "Description:" }}{PARA 0 "" 0 "" {TEXT -1 14 "The proce dure " }{TEXT 0 16 "distributiondata" }{TEXT -1 63 " constructs a list of data points for the distribution polygon." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 267 16 "How to activate:" }{TEXT 256 1 "\n" }{TEXT -1 156 "To ma ke the procedures active, open the subsection, place the cursor anywhe re after the prompt [ > and press [Enter].\nYou can then close up the subsection." }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 32 "distributiondata: implementation" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 1303 "distributiondata := proc(gen::procedure,rng: :range,n::posint,m::posint)\n local xx,jL,jR,jM,a,b,h,ah2,xdiv,xmid, count,i,j,k,delA,\n t1,t2;\n \n t1 := lhs(rng);\n t2 := \+ rhs(rng);\n if type(t1,realcons) and type(t2,realcons)\n and n ot has(\{t1,t2\},infinity) then\n a := evalf(t1);\n b := eva lf(t2);\n if a>=b then\n error \"range must have left sid e less than right side\"\n end if;\n else\n error \"the 2n d argument, %1, is invalid .. it should be a range of finite real valu es\",rng;\n end if;\n\n h := (b - a)/n;\n delA := evalf(1/(h*m)) ;\n ah2 := a + h/2;\n xdiv := [seq(a + j*h,j=0..n)];\n xmid := [ seq(ah2 + j*h,j=0..n-1)];\n count := [seq(0,j=1..n)];\n \n for i from 1 to m do # loop to generate data\n xx := gen();\n if \+ not type(xx,float) then\n error \"the 1st argument procedure m ust generate floating point values\"\n end if;\n if xx>=a an d xx<=b then\n jL := 0;\n jR := n + 1;\n # bin ary search for interval containing data value\n for k from 1 t o n while jR - jL > 1 do\n jM := trunc((jL+jR)/2);\n \+ if xx >= xdiv[jM] then jL := jM else jR := jM end if;\n end do;\n count[jL] := count[jL] + delA;\n end if;\n end d o;\n zip((x,i)->[x,i],xmid,count);\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 39 "Examples are gi ven 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 16 "distributiondata" }{TEXT -1 10 ": examples" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{PARA 0 "" 0 "" {TEXT 267 4 "N ote" }{TEXT -1 40 ": These examples require the procedures " }{TEXT 0 11 "randuniform" }{TEXT -1 6 " and " }{TEXT 0 10 "randnormal" }{TEXT -1 12 " as well as " }{TEXT 0 16 "distributiondata" }{TEXT -1 1 "." }} {SECT 1 {PARA 4 "" 0 "" {TEXT -1 9 "Example 1" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 104 "100,000 randomly generat ed floating point numbers uniformly distributed throughout the interva l -4 to 4." }}{PARA 0 "" 0 "" {TEXT -1 71 "25 intervals of width 0.32 \+ are used to construct the distribution data." }}{PARA 0 "" 0 "" {TEXT -1 1 "(" }{TEXT 267 4 "Note" }{TEXT -1 48 ": The data may take a few m inutes to construct.)" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 112 "randomize():\ngen := randuniform(-4..4): \npts := distributiondata(gen,-4..4,25,100000):\nplot(pts,x=-4..4,0..0 .15);" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 13 "Sample ouput:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>%$ptsG7;7$$!++++SQ!\"*$\"++DJD7!#57$$!++++?NF)$\"+++]d 7F,7$$!+++++KF)$\"++++l7F,7$$!++++!)GF)$\"+++](G\"F,7$$!++++gDF)$\"+++ vL7F,7$$!++++SAF)$\"+++]Z7F,7$$!++++?>F)$\"++]7V7F,7$$!+++++;F)$\"++]( =B\"F,7$$!++++!G\"F)$\"++]P\\7F,7$$!*+++g*F)$\"+++v=7F,7$$!*+++S'F)$\" ++D\"y?\"F,7$$!*+++?$F)$\"++D\"yB\"F,7$\"\"!$\"++v=x7F,7$$\"*+++?$F)$ \"+++]i7F,7$$\"*+++S'F)$\"++D\"GE\"F,7$$\"*+++g*F)$\"++v=-7F,7$$\"++++ !G\"F)$\"++D\"yD\"F,7$$\"+++++;F)$\"+++D^7F,7$$\"++++?>F)$\"++v$4G\"F, 7$$\"++++SAF)$\"++DJb7F,7$$\"++++gDF)$\"+++]K7F,7$$\"++++!)GF)$\"++](o D\"F,7$$\"+++++KF)$\"+++]n7F,7$$\"++++?NF)F57$$\"++++SQF)$\"++D\"GF\"F ," }}{PARA 13 "" 1 "" {GLPLOT2D 360 270 270 {PLOTDATA 2 "6%-%'CURVESG6 $7;7$$!1++++++SQ!#:$\"1++++DJD7!#;7$$!1++++++?NF*$\"1+++++]d7F-7$$!1++ +++++KF*$\"1++++++l7F-7$$!1++++++!)GF*$\"1+++++](G\"F-7$$!1++++++gDF*$ \"1+++++vL7F-7$$!1++++++SAF*$\"1+++++]Z7F-7$$!1++++++?>F*$\"1++++]7V7F -7$$!1+++++++;F*$\"1++++](=B\"F-7$$!1++++++!G\"F*$\"1++++]P\\7F-7$$!1+ ++++++'*F-$\"1+++++v=7F-7$$!1+++++++kF-$\"1++++D\"y?\"F-7$$F5F-$\"1+++ +D\"yB\"F-7$\"\"!$\"1++++v=x7F-7$$\"1+++++++KF-$\"1+++++]i7F-7$$\"1+++ ++++kF-$\"1++++D\"GE\"F-7$$\"1+++++++'*F-$\"1++++v=-7F-7$$\"1++++++!G \"F*$\"1++++D\"yD\"F-7$$\"1+++++++;F*$\"1+++++D^7F-7$$\"1++++++?>F*$\" 1++++v$4G\"F-7$$\"1++++++SAF*$\"1++++DJb7F-7$$\"1++++++gDF*$\"1+++++]K 7F-7$$\"1++++++!)GF*$\"1++++](oD\"F-7$$FdoF*$\"1+++++]n7F-7$$\"1++++++ ?NF*F67$$\"1++++++SQF*$\"1++++D\"GF\"F--%'COLOURG6&%$RGBG$\"#5!\"\"F_o F_o-%+AXESLABELSG6$Q\"x6\"%!G-%%VIEWG6$;$!\"%F_o$\"\"%F_o;F_o$\"#:!\"# " 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 9 "Example 2" }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 97 "100,000 randomly g enerated floating point numbers normally distributed with standard dev iation 2." }}{PARA 0 "" 0 "" {TEXT -1 71 "25 intervals of width 0.32 a re used to construct the distribution data." }}{PARA 0 "" 0 "" {TEXT -1 75 "The \"emprical\" distribution is compared with the theoretical \+ distribution " }{XPPEDIT 18 0 "y = exp(-x^2/(2*sigma^2))/sqrt(2*Pi*si gma^2);" "6#/%\"yG*&-%$expG6#,$*&%\"xG\"\"#*&F,\"\"\"*$%&sigmaGF,F.!\" \"F1F.-%%sqrtG6#*(F,F.%#PiGF.F0F,F1" }{TEXT -1 8 ", where " }{XPPEDIT 18 0 "sigma;" "6#%&sigmaG" }{TEXT -1 27 " is the standard deviation." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 1 "(" } {TEXT 267 4 "Note" }{TEXT -1 48 ": The data may take a few minutes to \+ construct.)" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 174 "randomize():\ngen := randnormal(2):\npts := distri butiondata(gen,-10..10,25,100000);\nsigma := 2:\nplot([pts,exp(-x^2/2/ sigma^2)/sqrt(2*Pi*sigma^2)],\nx=-10..10,color=[blue,red]);" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 14 "Sample output. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#>% $ptsG7;7$$!+++++'*!\"*\"\"!7$$!+++++))F)$\"++++]7!#97$$!+++++!)F)$\"++ ++v8!#87$$!+++++sF)$\"++++vGF67$$!+++++kF)$\"++++]8!#77$$!+++++cF)$\"+ +++]UFA7$$!+++++[F)$\"+++DT7!#67$$!+++++SF)$\"+++]ZEFL7$$!+++++KF)$\"+ +++SaFL7$$!+++++CF)$\"+++](p*FL7$$!+++++;F)$\"++]7Y9!#57$$!*++++)F)$\" ++++B=F[o7$F*$\"+++Dw>F[o7$$\"*++++)F)$\"+++DS=F[o7$$\"+++++;F)$\"++]i ]9F[o7$$\"+++++CF)$\"++++v)*FL7$$\"+++++KF)$\"+++DJcFL7$$\"+++++SF)$\" +++veFFL7$$\"+++++[F)$\"+++](=\"FL7$$\"+++++cF)$\"++++DRFA7$$\"+++++kF )$\"++++D7FA7$$\"+++++sF)F:7$$\"+++++!)F)$\"+++++vF07$$\"+++++))F)$\"+ ++++DF07$$\"+++++'*F)F." }}{PARA 13 "" 1 "" {GLPLOT2D 360 270 270 {PLOTDATA 2 "6&-%'CURVESG6$7;7$$!1+++++++'*!#:\"\"!7$$!1,++++++))F*$\" 1++++++]7!#?7$$!\")F+$\"1++++++v8!#>7$$!1+++++++sF*$\"1++++++vGF77$$!1 +++++++kF*$\"1++++++]8!#=7$$!1+++++++cF*$\"1++++++]UFB7$$!1+++++++[F*$ \"1+++++DT7!#<7$$!\"%F+$\"1+++++]ZEFM7$$!1+++++++KF*$\"1++++++SaFM7$$! 1+++++++CF*$\"1,++++](p*FM7$$!1+++++++;F*$\"1++++]7Y9!#;7$$!1+++++++!) F\\o$\"1++++++B=F\\o7$F+$\"1+++++Dw>F\\o7$$\"1+++++++!)F\\o$\"1+++++DS =F\\o7$$\"1+++++++;F*$\"1++++]i]9F\\o7$$\"1+++++++CF*$\"1++++++v)*FM7$ $\"1+++++++KF*$\"1+++++DJcFM7$$\"\"%F+$\"1+++++veFFM7$$\"1+++++++[F*$ \"1+++++](=\"FM7$$\"1+++++++cF*$\"1++++++DRFB7$$\"1+++++++kF*$\"1+++++ +D7FB7$$\"1+++++++sF*F;7$$\"\")F+$\"1*************\\(F17$$\"1,++++++)) F*$\"1+++++++DF17$$\"1+++++++'*F*F/-%'COLOURG6&%$RGBGF+F+$\"*++++\"F4- F$6$7eo7$$!#5F+$\"1*[rOd(fLu!#A7$$!1nmm;p0k&*F*$\"1&zs#*RW(e@!#@7$$!1L L$3@-9)F17$$!1nm;/R=0vF* $\"1rU;B(>fu\"F77$$!1,+]P8#\\4(F*$\"1b+X6zV\"p$F77$$!1mm;/siqmF*$\"10N qwakgwF77$$!1****\\(y$pZiF*$\"1)zV07$e;:FB7$$!1LLL$yaE\"eF*$\"1HNc:H4A HFB7$$!1mmm\">s%HaF*$\"12$R0b#o1]FB7$$!1******\\$*4)*\\F*$\"1hzq6I*\\y )FB7$$!1+++]_&\\c%F*$\"1lg-:CPu9FM7$$!1+++]1aZTF*$\"1\\\"ed$[\"HK#FM7$ $!1mm;/#)[oPF*$\"1Y#=bXq+Q$FM7$$!1LLL$=exJ$F*$\"1fs\"*f?oQ]FM7$$!1LLLe W%o7$F*$\"1:b.*>uj(eFM7$$!1LLLL2$f$HF*$\"1p#3`]q6z'FM7$$!1mmT&o_Qr#F*$ \"1BXGl:MWzFM7$$!1++]PYx\"\\#F*$\"1/^g9hWz\"*FM7$$!1nmTNz>&H#F*$\"1TK3 Ra_K5F\\o7$$!1MLLL7i)4#F*$\"1YH5NFC]6F\\o7$$!1mmTNa%H)=F*$\"1/WZv5e!G \"F\\o7$$!1****\\P'psm\"F*$\"18m#GA0#49F\\o7$$!1*****\\F&*=Y\"F*$\"1( \\hCgzq_\"F\\o7$$!1****\\74_c7F*$\"1d5*e$fXP;F\\o7$$!1lmT5VBU5F*$\"1$f o%Q&\\9u\"F\\o7$$!1:LL$3x%z#)F\\o$\"1jb)zL34$=F\\o7$$!1BL$e9d;J'F\\o$ \"1aLd\"y9y*=F\\o7$$!1ILL3s$QM%F\\o$\"1!)*QWL9#[>F\\o7$$!1lmT&QdDG$F\\ o$\"1yRi+[-o>F\\o7$$!1****\\ivF@AF\\o$\"1ZUj&pYC)>F\\o7$$!1n;/^wj!p\"F \\o$\"1!Q#=utf()>F\\o7$$!1MLeRx**f6F\\o$\"1jVaI\"f8*>F\\o7$$!17+D\"GyN H'FM$\"1?ksOSs$*>F\\o7$$!1^omm;zr)*FB$\"1=2^.ro%*>F\\o7$$\"1IL3x\"yY_% FM$\"1p>!H+,U*>F\\o7$$\"1NL3_Nl.5F\\o$\"1N5iS8?#*>F\\o7$$\"1O$ekGR[b\" F\\o$\"1VJCpEp))>F\\o7$$\"1QL$3-Dg5#F\\o$\"1uo\\pHo$)>F\\o7$$\"1TLe*[' R3KF\\o$\"1lDGa$4#p>F\\o7$$\"1WLLezw5VF\\o$\"1*yufV6*[>F\\o7$$\"1tmmmJ +IiF\\o$\"14m[@dC+>F\\o7$$\"1.++v$Q#\\\")F\\o$\"1!)\\&=y6e$=F\\o7$$\"1 om\"z\\1A-\"F*$\"1&)H+MJZ]POJR-!H\"F\\o7$$\"1,++D0xw?F*$\"1U.\")ecVj6F\\o7$$\"1,+v V+ZzAF*$\"1Uw7%e`=/\"F\\o7$$\"1,+]i&p@[#F*$\"1\"GKRvGWB*FM7$$\"1,+v=GB 2FF*$\"1%p:S!)e+)zFM7$$\"1+++vgHKHF*$\"1A:Os2I4oFM7$$\"1LL$3UDX8$F*$\" 1rK+gL:TeFM7$$\"1lmmmZvOLF*$\"1qyxY%)of\\FM7$$\"1,++]2goPF*$\"1Bi$Q27( zLFM7$$\"1KL$eR<*fTF*$\"1<+\\73D$H#FM7$$\"1-++])Hxe%F*$\"1gGG-AXO9FM7$ $\"1mm;H!o-*\\F*$\"1mii7>Jr))FB7$$\"1,+]7k.6aF*$\"1M,wRJLL^FB7$$\"1mmm ;WTAeF*$\"1np!R(*34)GFB7$$\"1****\\i!*3`iF*$\"15pV\"4^Q]\"FB7$$\"1NLLL *zym'F*$\"1?W+Bg\"ep(F77$$\"1OLL3N1#4(F*$\"1wt'ef$>5PF77$$\"1pm;HYt7vF *$\"1:)oIrY8s\"F77$$\"1-+++xG**yF*$\"1)*Gi&R6V<)F17$$\"1qmmT6KU$)F*$\" 1RV$HUl_K$F17$$\"1OLLLbdQ()F*$\"17\"zcr'*oU\"F17$$\"1++]i`1h\"*F*$\"1* =y-A\"QWbFat7$$\"1-+]P?Wl&*F*$\"1pLB&G1;:#Fat7$$\"#5F+Fis-F^s6&F`sFasF +F+-%+AXESLABELSG6$Q\"x6\"%!G-%%VIEWG6$;FgsFajl%(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 1 ";" }}}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 43 "Constructing random vectors and matrices \+ II" }}{PARA 0 "" 0 "" {TEXT -1 15 "The procedures " }{TEXT 0 11 "randu niform" }{TEXT -1 5 " and " }{TEXT 0 10 "randnormal" }{TEXT -1 74 " fr om above can also be used to generate random vectors and matrices with " }{TEXT 267 22 "floating point entries" }{TEXT -1 1 "." }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "rando mize():" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 40 "A random column vector with 3 components" }}{PARA 0 "" 0 "" {TEXT 270 8 "Method 1" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "Vector(3,[seq(randuniform(-1 0..10)(),i=1..3)]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\") %Q#3F-%'MATRIXG6#7%7#$!+U3Cq')!\"*7#$\"*5 " 0 "" {MPLTEXT 1 0 73 "with(LinearAlgebra):\nRandomVector[row](3,generator=randunifor m(-10..10));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")wqnE-%' VECTORG6#7%$!*/#oz]!\"*$\"*>cAM&!\")$\"*K!e#3\"F0" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 89 "A random 4 x 4 matrix wit h entries normally distributed about 0, with standard deviation " } {XPPEDIT 18 0 "sigma=10" "6#/%&sigmaG\"#5" }{TEXT -1 1 "." }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 48 "A := \+ RandomMatrix(4,4,generator=randnormal(10));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"AG-%'RTABLEG6$\")#*[CF-%'MATRIXG6#7&7&$\"+*QzE;$!\" *$\"+N1,S8!\")$!+ra:I`F0$!+_+Y&=#F07&$\"+d#)GFyF0$!+0Y^26F3$\"+y@w4KF0 $\"+$zw5#HF07&$!+y]cHp!#5$\"+&\\3#G " 0 "" {MPLTEXT 1 0 40 "B := A^(-1 ):\nevalf(B,10);\nevalf(B.A,10);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-% 'RTABLEG6$\")3FAF-%'MATRIXG6#7&7&$\"+$*=J;w!#6$\"+9AMh()F.$!+yP%[_#!#7 $!+3@v)\\(F37&$\"+V=@0RF.$!+&[F.$!+>)=I$HF.7&$!+>$3![8F.$\"+LJXrcF.$\"+?kT\"[%F.$ \"+;3vxQF." }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")o5?F-%'MA TRIXG6#7&7&$\"+++++5!\"*$\"$i%!#7$\"\"\"!#5$!\"#!#67&$\"\"!F:F,$!\"\"F 7$!\"'F77&F9$\"\"$F7F,F97&$F " 0 "" {MPLTEXT 1 0 1 ";" }}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 5 "Tasks" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}{SECT 1 {PARA 4 "" 0 " " {TEXT -1 2 "Q1" }}{PARA 0 "" 0 "" {TEXT -1 18 "(a) Construct a 4 " } {TEXT 273 1 "x" }{TEXT -1 10 " 4 matrix " }{TEXT 274 1 "A" }{TEXT -1 29 ", and a 4-dimensional vector " }{TEXT 275 1 "b" }{TEXT -1 12 ", ea ch with " }{TEXT 272 22 "random integer entries" }{TEXT -1 20 " betwee n -10 and 10." }}{PARA 0 "" 0 "" {TEXT -1 5 " " }}{PARA 0 "" 0 "" {TEXT -1 28 "(b) Solve the linear system " }{XPPEDIT 18 0 "A*`.`*x=b" "6#/*(%\"AG\"\"\"%\".GF&%\"xGF&%\"bG" }{TEXT -1 16 " for the matrix " }{TEXT 276 1 "A" }{TEXT -1 12 " and vector " }{TEXT 277 1 "b" }{TEXT -1 20 " constructed in (a)." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 24 "(c) Check your solution." }}{PARA 0 "" 0 "" {TEXT -1 37 "_____________________________________" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 37 "__ ___________________________________" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 1 ";" }}}}{SECT 1 {PARA 4 "" 0 "" {TEXT -1 2 "Q2" }} {PARA 0 "" 0 "" {TEXT -1 18 "(a) Construct a 4 " }{TEXT 278 1 "x" } {TEXT -1 10 " 4 matrix " }{TEXT 282 1 "A" }{TEXT -1 29 ", and a 4-dime nsional vector " }{TEXT 281 1 "b" }{TEXT -1 12 ", each with " }{TEXT 272 55 "random 10 digit floating point entries between -1 and 1" } {TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 5 " " }}{PARA 0 "" 0 "" {TEXT -1 28 "(b) Solve the linear system " }{XPPEDIT 18 0 "A*`.`*x=b" "6#/*(%\"AG\"\"\"%\".GF&%\"xGF&%\"bG" }{TEXT -1 16 " for the matrix " }{TEXT 279 1 "A" }{TEXT -1 12 " and vector " }{TEXT 280 1 "b" }{TEXT -1 20 " constructed in (a)." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 24 "(c) Check your solution." }}{PARA 0 "" 0 "" {TEXT -1 37 "_____________________________________" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 37 "__ ___________________________________" }}{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 }