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 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)
	
	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 PXbio = PxTVSS-Q*X0i
	var R0 = (Q*(S0-S)-1.42*PXbio)/1000
	document.outputForm.elements[0].value = R0.toFixed(1)
}

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 = 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
	
	calculate(form)
}