This page is under development. Comments are welcome, but please load any comments in the comments section at the bottom of the page. Please include your wiki MONIKER and date in your comment with the same courtesy that I will give you. Aside from your courtesy, your wiki MONIKER and date as a signature and minimal good faith of any internet post are the rules of this TCL-WIKI. Its very hard to reply reasonably without some background of the correspondent on his WIKI bio page. Thanks, gold 12DEC2018
gold Here is some eTCL starter code for calculating materials of ancient Sumerian bitumen. The impetus for these calculations was checking bitumen weights in some cuneiform texts and modern replicas. Most of the testcases involve replicas or models, using assumptions and rules of thumb.
In ancient Sumer and Babylon, there were many terms for bitumen products, but the two primary terms in the Sumerian language were esir a (watery bitumen ) and esir had (dry bitumen), as cited in the Sumerian coefficient lists. Babylon sold 60 liters of construction and waterproofing pitch (esir a) for 1 silver piece and 40 liters (eq. vol) of dry pitch (esir had) for 1 silver piece. At least in terms of shipping, esir had easier to transport. Esir a was a liquid petroleum product and had to be shipped in pottery jars and probably kept sealed. If price is measure of petroleum fractions for the heavy (esir had) fraction and light fraction (esir a), the tar fraction was 40 liters (for a shekel)/ 60 liters (for a shekel) , 2/3, or 40/60 of the heavy esir a fraction. Using modern terms for crude oil, the tar fraction was from 10-14 %, 5.25 kg to 7.3 kg out of 52.5 kilograms of converted barig 60 liter unit.
The texts mention both cooking and (implied) sun dry processing for bitumen. Suppose that the Babylon products were derived from successive cooking or sun-dry processes, then a crude production line or process could be outlined: 100 liters crude oil > 85 liter lamp oil > 60 liters construction & waterproofing pitch > 40 liters dry pitch. Starting with 100 per cent, straining and cooking would remove impurities such as spare water, sand particles, and plant matter. Further cooking would remove the gasoline and naphtha fractions, leaving about 85 percent for lamp fuel (eg. kerosene) and medicine. Additional cooking would remove kerosene and some mineral oil leaving 30 percent of the original crude oil for a heavy oil/pitch fraction (esir a) for waterproofing woven products, construction of floors and walls, and waterproofing bricks. The next stage would cooking or drying the heavy oil/pitch into the 20 percent residue called esir had. The conjecture here is that esir a was the feedstock for esir had. Esir had was used in crafts as a cement or mixed with stone powder as a sort of moldable plastic. Possibly, esir had was used as fuel in brick kilns, smelters, and other industrial processes.
For eTCL calculator, the recommended procedure is push testcase and fill frame, then change the entry for raw bitumen and push solve. The English terms "watery pitch, wet pitch, and dry pitch" appeared in the original English translation by Goetze, Mathematical Cuneiform Texts. They are used in the eTCL calculator for consistency with the original translation. Pushing the report button will print a report in the Tcl Wiki format on the console window.
possible fractions left at boiling or sun dry processes. | |||||
---|---|---|---|---|---|
100 liters crude oil > 85 liter lamp oil > 60 liters construction & waterproofing pitch > 40 liters dry | |||||
modern fractions, no cracking | modern (1870's) | modern fraction | |||
product | fraction starting zero % | starting 100% | Babylon 100-% | Cuneiform name | Bablylon use or comment |
gasoline | 1.7 | 98.3 | no reported use | ||
naptha | 14. | 84.3 | 85 | naptum (fire oil) | medicine? |
kerosene | 34 | 50 | 60 | naptum (fire oil) | lamp oil, medicine, Late B. warfare |
bunker oil | 18 | 32.3 | 30 | esir a (wet pitch) | waterproofing,construction, bldg floors,brick mortar, ships, ropes |
tar,pitch,wax | 15 | 17.23 | 20 | esir had (dry pitch) | melted for coatings, statuary plaster uses, possibly fuel |
losses | 12 | 5 | 5 | ||
total | 100 |
coefficient | transliterated | english | possible decimal /fraction |
---|---|---|---|
15 | igi.gub.esiri.e | coefficient refined pitch | 15/60 |
16 | igi.gub.esiri | coefficient raw pitch | 16/60 |
15 | ssa esiri | coefficient pitch | 15/60 |
12 | ssa esiri | coefficient (refined?) pitch | 12/60 |
10 45 06 | ssa ina ki-ri-im | coefficient (refined?) pitch | 0.1794 |
15 | ssa esiri ? | coefficient (raw?) pitch | 15/60 |
15 | ssa esiri-e-aIt | coefficient refined pitch | 15/60 |
2.5 | barig (of) esir-e-a | price wet pitch | 2.5 barig for 1 shekel , URIII |
10 | gu (of) esir-had | price dry pitch | 10 gu for 1 shekel , URIII |
12 | gu (of) esir-had | price dry pitch | 12 gu for 1 shekel, URIII |
4 | ban (of) esir-had | price dry pitch | 4 ban for 1 shekel, Babylon 1900 BC |
Note: Some of the coefficient values may appear redundant, however the coefficient lists and price lists for bitumen products appeared in considerably different eras, countries, and languages. To that extent, it is risky to assume that a bitumen product in Babylon (1900 BCE) means the same consistency,price, and product in Sumer (UrIII, 2300 BCE)
Pseudocode with some Equations |
---|
namespace path {::tcl::mathop ::tcl::mathfunc} |
pseudocode: answer is mandays of labor or silver pieces +- error |
price? = raw materials + labor + profits |
price? = raw materials + heat process |
price? = raw materials + labor |
In planning any software, it is advisable to gather a number of testcases to check the results of the program. The math for the testcases can be checked by pasting statements in the TCL console. Aside from the TCL calculator display, when one presses the report button on the calculator, one will have console show access to the capacity functions (subroutines).
T 1 table | printed in tcl wiki format | |
---|---|---|
quanity | value | comment, if any |
testcase number | 1 | |
initialcrude kilograms: | 100. | |
naptum (fire oil) kilograms | 85.0 | |
lamp oil (& medicine) kilograms: | 60.0 | |
liquid pitch kilograms:: | 30.0 | |
dry pitch kilograms : | 20.0 | |
heating value of dry pitch, Megajoules: | 400.0 | |
price of pitch in silver: | 1.0 |
T 2 table | printed in tcl wiki format | |
---|---|---|
quanity | value | comment, if any |
testcase number | 2 | |
initialcrude kilograms: | 10. | |
naptum (fire oil) kilograms | 8.5 | |
lamp oil (& medicine) kilograms: | 6.0 | |
liquid pitch kilograms:: | 3.0 | |
dry pitch kilograms : | 2.0 | |
heating value of dry pitch, Megajoules: | 40.0 | |
price of pitch in silver: | 0.1 |
T 3 table | printed in tcl wiki format | |
---|---|---|
quanity | value | comment, if any |
testcase number | 3 | |
initialcrude kilograms: | 500. | |
naptum (fire oil) kilograms | 425.0 | |
lamp oil (& medicine) kilograms: | 300.0 | |
liquid pitch kilograms:: | 150.0 | |
dry pitch kilograms : | 100.0 | |
heating value of dry pitch, Megajoules: | 2000.0 | |
price of pitch in silver: | 5.0 |
# TCL source code follows # pretty print from autoindent and ased editor # Sumerian Bitumen calculator # written on Windows XP on TCL # working under TCL version 8.6 # gold on TCL Club, 12Dec2018 package require Tk package require math::numtheory namespace path {::tcl::mathop ::tcl::mathfunc math::numtheory } set tcl_precision 17 frame .frame -relief flat -bg aquamarine4 pack .frame -side top -fill y -anchor center set names {{} {raw bitumen kilograms:} } lappend names {answers: naptum (fire oil) kilograms:} lappend names {lamp oil (& medicine) kilograms: } lappend names {liquid pitch (waterproofing) kilograms: } lappend names {dry pitch (construction, fuel?) kilogram:} lappend names {heating value of dry pitch, Megajoules: } lappend names {optional: } lappend names {price of product in silver: } foreach i {1 2 3 4 5 6 7 8} { 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 Sumerian bitumen from TCL # gold on TCL Club, 12Dec2018 " tk_messageBox -title "About" -message $msg } proc self_help {} { set msg " Sumerian Bitumen V2 from TCL , # self help listing # problem, Sumerian Bitumen V2 # 1 given follows. 1) raw bitumen kilograms: # Assuming Sumerian process was cooking crude, # calculator gives fractions as left over, # a subtractive process. # Crude fractions set from 1870's report. # Later production in USA used heavier crude # until tar sands (much heavier) and different # proportions. Suggest that Sumerian products # were defined more by use than measured viscosity. # Recommended procedure is push testcase # and fill frame, # change first three entries etc, push solve, # and then push report. Report allows copy and paste # from console to conventional texteditor. # For testcases, # testcase number is internal to the calculator and # will not be printed until the report button is pushed # for the current result numbers. # >>> copyright notice <<< # This posting, screenshots, and TCL source code is # copyrighted under the TCL/TK license terms. # Editorial rights and disclaimers # retained under the TCL/TK license terms # and will be defended as necessary in court. Conventional text editor formulas or grabbed from internet screens can be pasted into green console. # gold on TCL Club, 12Dec2018 " tk_messageBox -title "Self_Help" -message $msg } proc calculate { } { global answer2 global side1 side2 side3 side4 side5 global side6 side7 side8 global testcase_number global initialcrude bitumenkg global construction oilcl crude lampoil global silverxpr incr testcase_number set side1 [* $side1 1. ] set side2 [* $side2 1. ] set side3 [* $side3 1. ] set side4 [* $side4 1. ] set side5 [* $side5 1. ] set side6 [* $side6 1. ] set side7 [* $side7 1. ] set side8 [* $side8 1. ] #straining sand?,set initialcrude [* $side1 0.98] set initialcrude $side1 set bitumenkg $initialcrude set side2 [* $bitumenkg .85] set side3 [* $bitumenkg .60] set side4 [* $bitumenkg .30] set side5 [* $bitumenkg .20] set side6 [* $bitumenkg .20 20] set construction [* $bitumenkg .60] set oilcl [* $bitumenkg .30] set crude [* $bitumenkg .20] set side8 [* $side5 [/ 1. 20.]] set silverxpr $side8 } proc fillup {aa bb cc dd ee ff gg hh} { .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" .frame.entry8 insert 0 "$hh" } proc clearx {} { foreach i {1 2 3 4 5 6 7 8 } { .frame.entry$i delete 0 end } } proc reportx {} { global side1 side2 side3 side4 side5 global side6 side7 side8 global testcase_number console eval {.console config -bg palegreen} console eval {.console config -font {fixed 20 bold}} console eval {wm geometry . 40x20} console eval {wm title . " Sumerian Bitumen Report V2, screen grab and paste from console 2 to texteditor"} console eval {. configure -background orange -highlightcolor brown -relief raised -border 30} console show; puts "%|table $testcase_number |printed in| tcl format|% " puts "&| quantity| value| comment, if any|& " puts "&| $testcase_number :|testcase_number | |&" puts "&| $side1 :|raw bitumen kilograms: | |&" puts "&| $side2 :|answers: naptum (fire oil) kilograms: | |& " puts "&| $side3 :|lamp oil (& medicine) kilograms: | |& " puts "&| $side4 :|liquid pitch (waterproofing) kilograms: | |&" puts "&| $side5 :|dry pitch (construction, fuel?) kilograms: | |&" puts "&| $side6 :|heating value of dry pitch, Megajoules: | |&" puts "&| $side7 :|optional: | |&" puts "&| $side8 :|Babylonian price of product in silver: | |&" } frame .buttons -bg aquamarine4 ::ttk::button .calculator -text "Solve" -command { set side8 0 ; calculate } ::ttk::button .test2 -text "Testcase1" -command {clearx;fillup 100. 85. 60. 30. 20. 400. 0. 1.0 } ::ttk::button .test3 -text "Testcase2" -command {clearx;fillup 10. 8.5 6.0 3.0 2.0 40. 0. .1 } ::ttk::button .test4 -text "Testcase3" -command {clearx;fillup 500. 425. 300. 150. 100. 2000. 0. 5.0} ::ttk::button .clearallx -text clear -command {clearx } ::ttk::button .about -text about -command {about} ::ttk::button .self_help -text self_help -command { self_help } ::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 .self_help .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 . "Sumerian Bitumen Calculator V2"
For the push buttons, the recommended procedure is push testcase and fill frame, change first three entries etc, push solve, and then push report. Report allows copy and paste from console.
For testcases in a computer session, the eTCL calculator increments a new testcase number internally, eg. TC(1), TC(2) , TC(3) , TC(N). The testcase number is internal to the calculator and will not be printed until the report button is pushed for the current result numbers (which numbers will be cleared on the next solve button.) The command { calculate; reportx } or { calculate ; reportx; clearx } can be added or changed to report automatically. Another wrinkle would be to print out the current text, delimiters, and numbers in a TCL wiki style table as
puts " %| testcase $testcase_number | value| units |comment |%" puts " &| volume| $volume| cubic meters |based on length $side1 and width $side2 |&"
News flash:20Apr2015. In an exciting manner, Naval archaeology around the S.A. gulf is developing the ground truth for the bitumen coefficients and the cuneiform ship inventory lists. The analysis here noted that some coefficients lead to thick coatings of 3-4 centimeters, much thicker than expected from modern ship paint and coatings. In some ship excavations, it has been determined that vegetable fibers comprise 10 to 60 percent of the bitumen coating on excavated ships. The reported fibers appear to be grass or reed fibers. In most cases, soil or beach contamination over the ages could not account for the vegetable fibers. Hence, some excavated ship coating samples appear to be a composite material of dried bitumen and vegetable fibers, applied as a hot mixture (using modern terms here). The cuneiform texts suggested that some ships were salvaged for the bitumen coating and timbers. Also, reused (crushed) bitumen materials were referenced in the ship inventories. Ship inventories of grass were thought to used for rope and mats, but now the possibility is that some chopped fibers were deliberately added to bitumen at the arsenal (UrIII). Effectively now, there are two types of known Sumerian composites, the bitumen/ vegetable fiber composite used on ships and the bitumen/limestone powder used in sculpture.
Please place any comments here with your wiki MONIKER and date. Thanks, gold 12DEC2018
Category Numerical Analysis | Category Toys | Category Calculator | Category Mathematics | Category Example | Toys and Games | Category Games | Category Application | Category GUI |