function calculate(form) {
	var i=0
	var Q = parseFloat(form.elements[i].value); i++
	var S0 = parseFloat(form.elements[i].value); i++
	var X0i = parseFloat(form.elements[i].value); i++
	var II = parseFloat(form.elements[i].value); i++
	var XT = parseFloat(form.elements[i].value); i++
	var SRT = parseFloat(form.elements[i].value); i++
	var k = parseFloat(form.elements[i].value); i++
	var Y = parseFloat(form.elements[i].value); i++
	var kd = parseFloat(form.elements[i].value); i++
	var Ks = parseFloat(form.elements[i].value); i++
	var fd = parseFloat(form.elements[i].value); i++
	var VSSTSS = parseFloat(form.elements[i].value)
	
	var S = Ks*(1+kd*SRT)/(SRT*(Y*k-kd)-1)
	var HRT = SRT/XT*(Y*(S0-S)*(1+fd*kd*SRT)/(1+kd*SRT)+X0i)
	var PxTVSS = XT*HRT*Q/SRT
	var PxTTSS = (Q*Y*(S0-S)/(1+kd*SRT)/0.85+fd*kd*Y*Q*(S0-S)*SRT/(1+kd*SRT)/0.85+Q*X0i+Q*(II))
	var bsCODremoved = Q*(S0-S)
	var YobsVSS = PxTVSS/bsCODremoved
	var YobsTSS = PxTTSS/bsCODremoved
	var a = Y*(S0-S)/(1+kd*SRT)
	var biomass = 1/(1+fd*kd*SRT+X0i/a)
	var PXbio = PxTVSS-Q*X0i
	var R0 = (Q*(S0-S)-1.42*PXbio)/1000

	i=0
	var outputForm = document.outputForm
	outputForm.elements[i].value = S.toFixed(2); i++
	outputForm.elements[i].value = HRT.toFixed(3); i++
	outputForm.elements[i].value = (PxTVSS/1000).toFixed(1); i++
	outputForm.elements[i].value = (PxTTSS/1000).toFixed(1); i++
	outputForm.elements[i].value = biomass.toFixed(2); i++
	outputForm.elements[i].value = YobsVSS.toFixed(2); i++
	outputForm.elements[i].value = YobsTSS.toFixed(2); i++
	outputForm.elements[i].value = R0.toFixed(1); i++
	
	document.entryForm.pointerResults.value = "Results are shown below."
	
	//var numElements = document.entryForm.elements.length
	//document.entryForm.scrollIntoView()
}

function setTypicalValues(form) {
	var i=0
	form.elements[i].value = 1000; i++
	form.elements[i].value = 192; i++
	form.elements[i].value = 30; i++
	form.elements[i].value = 10; i++
	form.elements[i].value = 2500; i++
	form.elements[i].value = 6; i++
	form.elements[i].value = 12.5; i++
	form.elements[i].value = 0.40; i++
	form.elements[i].value = 0.10; i++
	form.elements[i].value = 10; i++
	form.elements[i].value = 0.15; i++
	form.elements[i].value = 0.85
	
	calculate(form)
}

function spotParameters(e) {
	var target
	if (!e) var e = window.event
	if (e.target) target = e.target
	else if (e.srcElement) target = e.srcElement
	if (target.nodeType == 3) // defeat Safari bug
		target = target.parentNode
	if (target.tagName=="INPUT") {
		
	}
}

function clearPointingResults() {
	document.entryForm.pointerResults.value = ""
}
