***Testing Normality of Pi, Console Example *** This page is under development. Comments are welcome, but please load any comments in the comments section at the middle of the page. Thanks,[gold] ---- [gold] Here is an eTCL script on testing the normality of [pi] for the etcl console. It has not been mathematically proven that [pi] is a normal number, but numerical analysis with tcl can check for some aspects of normality in pi. The normality of a number means that the numbers (0,1,2..9) in the mantissa are equally common at infinity. In base 10, the relative frequencies of the N numbers in the manitssa approach 1/10 as N approaches infinity. For example, Kanada used a set of 6.4E9 decimal digits and found the frequency s 600009044/6442450000 or 0.0931336749218077. One can paste statements into the etcl console. ====== % puts [ expr {1.*600009044/6442450000 }] 0.0931336749218077 ====== ---- In planning any software, there is a need to develop testcases. Testcase 1. frequency of "7" for collection of N digits of pi %|quantity|frequency|N |digits|% &|7| |20| digits |& &|7| | 50 |digits|& ---- ***Screenshots Section*** frequency of "7" in pi mantissa approaches limit of 0.1 as N>>1 frequency versus set of numbers of total N. [http://img546.imageshack.us/img546/9785/aaarx.jpg] ---- '''Comments Section''' Please place any comments here, Thanks. ---- ***References:*** * http://pi314.at/math/normal.html * http://mathworld.wolfram.com/NormalNumber.html * http://www.lbl.gov/Science-Articles/Archive/pi-random.html * http://www.geom.uiuc.edu/~huberty/math5337/groupe/digits.html * http://www.eveandersson.com/pi/digits/ * http://www.geom.uiuc.edu/~huberty/math5337/groupe/digits.html * http://www.super-computing.org/ * http://www.piworld.de/pi-statistics/ * citeseerx.ist.psu.edu/ viewdoc/ download?doi=10.1.1.133.7330 &rep=rep1 &type=pdf ---- ****Appendix TCL programs and scripts **** **** Pretty Print Version*** ====== # Pretty print version from autoindent # and ased editor # written on Windowws XP on eTCL # working under TCL version 8.5.6 and eTCL 1.0.1 # gold on TCL WIKI , 25may2011 #rank of indiv. "throws" over all "throws". #pi mantissa used here package require Tk console show proc calculation { facen } { # prob. subroutines for mimic sequence of bronze # prob. is throw combos of eg. "7" over all possible throws set lister [split {14159265358979323846} ""] set ee [llength $lister ] set kk [ llength [ lsearch -all $lister $facen ] ] set prob [ expr { ($kk*1.) / $ee } ] return $prob } set limit 12 for { set i 0 } { $i <= $limit } { incr i } { lappend listxxx $i lappend listxxx [ calculation $i ] puts " $i [ calculation $i ] " } #end results for first 20 numbers of pi mantissa 0 0.0 1 0.1 2 0.1 3 0.15 4 0.1 5 0.15 6 0.1 7 0.05 8 0.1 9 0.15 10 0.0 11 0.0 12 0.0 {14159265358979323846264338327950288419716939937} 1 0.0851063829787234 2 0.10638297872340426 3 0.1702127659574468 4 0.0851063829787234 5 0.0851063829787234 6 0.0851063829787234 7 0.0851063829787234 8 0.10638297872340426 9 0.1702127659574468 10 0.0 11 0.0 12 0.0 results for first 20 numbers of pi mantissa 1 0.1 2 0.1 3 0.15 4 0.1 5 0.15 6 0.1 7 0.05 8 0.1 9 0.15 results for small numbers of pi mantissa 1 0.0851063829787234 2 0.10638297872340426 3 0.1702127659574468 4 0.0851063829787234 5 0.0851063829787234 6 0.0851063829787234 7 0.0851063829787234 8 0.10638297872340426 9 0.1702127659574468 results for 100k numbers of pi mantissa 1 0.1000947923455181 2 0.09782372573414697 3 0.0989790074451488 4 0.09843592629895136 5 0.09899875585046508 6 0.09899875585046508 7 0.09898888164780693 8 0.09852479412287458 9 0.09777435472085629 ====== *** Code scraps, timing statements*** ====== puts " loading [time {pixane load $p -file $fin} ]" puts "Scaling ($sourcewidth x $sourceheight) => ($virtualwidth x $virtualheight)" puts " resizex [time {pixane resize $targetpix $virtualwidth $virtualheight } ]" puts " blanking [time {pixane blank $targetpix } ]" puts " rescale [time {pixane scale $targetpix $p } ]" puts " saving [time {pixane save $targetpix -file $fout -format jpg } ]" puts " proc time [time { jackpix } ]" ====== <> Testing | Toys | Performance | Image Processing |Graphics| Example | Mathematics