Average Acorn Weight (lb)
Average acorn weight in pounds as predicted from Diameter at breast height (DBH) and species of oak. a Table from Down, 1944 was fit with polynomial equations to allow a formula represntation of the tabular data.
Based on:
Downs, Albert A. 1944. Estimating acorn crops for wild life in the southern Appalachians. Journal of Wildlife Management. 8(4):339-340.
Example
- Imperial Units
- dia = 22 in inches
- species = "black"
- unittype = "imperial"
- Answer = 4.6341 lb for that tree
- Metric Units
- dia = in centimeters
- species =
- unittype = "metric"
- Answer = kg for that tree
Code
Visual Basic
Function acornwt(dbh As Double, species As String) As Double
' Function to calculate mean acorn weight (in lb) from dbh and species and trees per acre
' by David R. Larsen, Copyright October 9, 2012
' Creative Commons http://creativecommons.org/licenses/by-nc/3.0/us/
If (species = "black" And dbh > 9.9 And dbh < 36.1) Then
acornwt = -1.9065 + 0.2973 * dbh
ElseIf (species = "chestnut" And dbh > 9.9 And dbh < 36.1) Then
acornwt = 0.0008271 * dbh ^ 3 - 0.08157 * dbh ^ 2 + 2.692 * dbh - 18.85
ElseIf (species = "red" And dbh > 9.9 And dbh < 36.1) Then
acornwt = 0.0004016 * dbh ^ 4 - 0.0349937 * dbh ^ 3 + 0.9864357 * dbh ^ 2 - 9.5233885 * dbh + 27.32720516
ElseIf (species = "scarlet" And dbh > 9.9 And dbh < 36.1) Then
acornwt = 0.0005975 * dbh ^ 4 - 0.05325 * dbh ^ 3 + 1.651 * dbh ^ 2 - 19.97 * dbh + 84.71
ElseIf (species = "white" And dbh > 9.9 And dbh < 36.1) Then
acornwt = 0.0001987 * dbh ^ 4 - 0.02027 * dbh ^ 3 + 0.694 * dbh ^ 2 - 8.768 * dbh + 37.36
Else
acornwt = Empty
End If
End Function
Excel® Visual Basic Code
R Statistical Package Code
acornwt = function(dbh, species)
{
# Function to calculate mean acorn weight (in lb) from dbh and species and trees per acre
# by David R. Larsen, Copyright October 9, 2012
# Creative Commons http://creativecommons.org/licenses/by-nc/3.0/us/
if( (species == "black") && (dbh > 9.9) && (dbh < 36.1) ){
acornwt = -1.9065 + 0.2973 * dbh
}else if((species == "chestnut") && (dbh > 9.9) && (dbh < 36.1)){
acornwt = 0.0008271 * dbh ^ 3 - 0.08157 * dbh ^ 2 + 2.692 * dbh - 18.85
}else if(species = "red" And dbh > 9.9 And dbh < 36.1) {
acornwt = 0.0004016 * dbh ^ 4 - 0.0349937 * dbh ^ 3 + 0.9864357 * dbh ^ 2 - 9.5233885 * dbh + 27.32720516
}else if (species = "scarlet" And dbh > 9.9 And dbh < 36.1){
acornwt = 0.0005975 * dbh ^ 4 - 0.05325 * dbh ^ 3 + 1.651 * dbh ^ 2 - 19.97 * dbh + 84.71
}else if(species = "white" And dbh > 9.9 And dbh < 36.1){
acornwt = 0.0001987 * dbh ^ 4 - 0.02027 * dbh ^ 3 + 0.694 * dbh ^ 2 - 8.768 * dbh + 37.36
}else{
acornwt = 0.0
}
acornwt
}
R Statistical Package Code
Python Code
#!/usr/local/bin/python
# Function to calculate mean acorn weight (in lb) from dbh and species and trees per acre
# by David R. Larsen, Copyright October 9, 2012
# Creative Commons http://creativecommons.org/licenses/by-nc/3.0/us/
def acornwt(dbh, species)
if( (species == "black") && (dbh > 9.9) && (dbh < 36.1) ):
acornwt = -1.9065 + 0.2973 * dbh
elif((species == "chestnut") && (dbh > 9.9) && (dbh < 36.1)):
acornwt = 0.0008271 * dbh ^ 3 - 0.08157 * dbh ^ 2 + 2.692 * dbh - 18.85
elif(species = "red" And dbh > 9.9 And dbh < 36.1):
acornwt = 0.0004016 * dbh ^ 4 - 0.0349937 * dbh ^ 3 + 0.9864357 * dbh ^ 2 - 9.5233885 * dbh + 27.32720516
elif(species = "scarlet" And dbh > 9.9 And dbh < 36.1):
acornwt = 0.0005975 * dbh ^ 4 - 0.05325 * dbh ^ 3 + 1.651 * dbh ^ 2 - 19.97 * dbh + 84.71
elif(species = "white" And dbh > 9.9 And dbh < 36.1):
acornwt = 0.0001987 * dbh ^ 4 - 0.02027 * dbh ^ 3 + 0.694 * dbh ^ 2 - 8.768 * dbh + 37.36
else
acornwt = 0.0
retrun acornwt
print "imperial =", acornwt( 14.3, "black" )
print "imperial =", acornwt( 22.6, "white" )
print "imperial =", acornwt( 18.9, "scarlet" )
Python Code
Note the python file has a extra "txt" at the end to allow the files to be viewed in a web browser.
Go Code
Run code in the Go Playground
Go Code
Note the Go file has a extra "txt" at the end to allow the files to be viewed in a web browser.
|