*** Chinese Sea Island Height Slot Calculator 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 to estimate Sea Island Height. Sea Island Mathmatics Manual was a Chinese math book by Liu Hui. (263 CE) This book is of historical interest in algebra and geometry. ---- In planning any software, one needs a good testcase. %|quantity|number|units|% &| height of both poles | 30.|chi|& &|distance between 2 poles | 6000|chi|& &| back pole offset distance | 762 |chi|& &| forward pole offset distance | 738 |chi|& &| textbook answer was 4 li and 55 steps |7530|chi|& checking the math by hand calculator: ((pole height * distance between 2 poles)/ (back pole offset distance - forward pole offset distance)) +pole height ((30 chi * 6000 chi)/(762 chi - 738 chi)) +30 chi equals 7530 chi ---- ***Screenshots Section*** [http://farm5.static.flickr.com/4095/4905065165_1f66b1e43f.jpg] ---- '''Comments Section''' Please place any comments here, Thanks. ---- ***References:*** * http://wwmat.mat.fc.ul.pt/~jnsilva/Sherlock/china2.pdf * Liu Hui * http://www-groups.dcs.st-and.ac.uk/~history/Biographies/Liu_Hui.html * http://www.hardsumsclub.co.uk/quiz/liu.pdf * http://en.wikipedia.org/wiki/The_Sea_Island_Mathematical_Manual * http://math.ucsd.edu/programs/undergraduate/history_of_math_resource/history_papers/math_history_01.pdf * http://kaleidoscope.cultural-china.com/en/135Kaleidoscope5304.html * http://math2033.uark.edu/wiki/index.php/Liu_Hui ---- ****Appendix Code**** ****appendix TCL programs and scripts **** ****Pretty Print Version**** ====== # Pretty print version from autoindent and # ased editor # Liu Hui on Sea Island Height # written on Windows XP on eTCL # working under TCL version 8.5.6 and eTCL 1.0.1 # gold on TCL WIKI , 18aug2010 frame .frame -relief flat -bg aquamarine4 pack .frame -side top -fill y -anchor center set names {{} {both poles height:} {distance tween 2 poles:} {back poll offset :} {front pole offset:} {height:} {answer height :} {height/1000:}} foreach i {1 2 3 4 5 6 7} { label .frame.label$i -text [lindex $names $i] -anchor e entry .frame.entry$i -width 35 -textvariable side$i grid .frame.label$i .frame.entry$i -sticky ew -pady 2 -padx 1 } proc about {} { set msg "Calculator for Sea Island Height. from TCL WIKI, written on eTCL " tk_messageBox -title "About" -message $msg } proc pi {} {expr acos(-1)} proc seaisland5 { xx1 } { global side1 side2 side3 global side4 side5 side6 side7 set ss side1 set tt $side2 set xxx [ expr { $side4*[pi]/180. } ] set side5 [ expr { ((1.*$side1*$side2)/(1.*$side3-1.*$side4))+$side1} ] set side6 [ expr { ((1.*$side1*$side2)/(1.*$side3-1.*$side4))+$side1} ] set side7 [ expr { ((1.*$side1*$side2)/(1.*$side3-1.*$side4))+$side1} ] set side7 [ expr { $side7*.001} ] return $side7 } proc calculate { } { global answer2 global side1 side2 side3 side4 side5 side6 side7 set answer2 [ seaisland5 $side1 ] set side7 $answer2 } proc fillup {aa bb cc dd ee ff gg} { .frame.entry1 insert 0 "$aa" .frame.entry2 insert 0 "$bb" .frame.entry3 insert 0 "$cc" .frame.entry4 insert 0 "$dd" .frame.entry5 insert 0 "$ee" .frame.entry6 insert 0 "$ff " .frame.entry7 insert 0 "$gg " } proc clearx {} { foreach i {1 2 3 4 5 6 7} { .frame.entry$i delete 0 end } } proc reportx {} { console show; puts " " } frame .buttons -bg aquamarine4 ::ttk::button .calculator -text "Solve" -command { calculate } ::ttk::button .test2 -text "Testcase1" -command {clearx;fillup 30. 6000. 762. 738. 7530. 7530. 7530.} ::ttk::button .test3 -text "Testcase2" -command {clearx;fillup 30. 6000. 762. 738. 7530. 7530. 7530.} ::ttk::button .test4 -text "Testcase3" -command {clearx;fillup 30. 6000. 762. 738. 7530. 7530. 7530. } ::ttk::button .clearallx -text clear -command {clearx } ::ttk::button .about -text about -command about ::ttk::button .cons -text report -command { reportx } ::ttk::button .exit -text exit -command {exit} pack .calculator -in .buttons -side top -padx 10 -pady 5 pack .clearallx .cons .about .exit .test4 .test3 .test2 -side bottom -in .buttons grid .frame .buttons -sticky ns -pady {0 10} . configure -background aquamarine4 -highlightcolor brown -relief raised -border 30 wm title . "Sea Island Height" ====== ---- **Comments Section** Please place any comments here, Thanks. <> <> Numerical Analysis | Toys | Calculator | Example | Mathematics