var React = new Array(3)var Prod = new Array(3)var Neq = new Array(3)var deltaH = new Array(3)var TdeltaS = new Array(3)var Lists = new Array(3)	var sels = new Array(11)var ctrl = 1var rName = "R1.gif"var pic = "bat1.gif"var clearname = " "var myform = "A"var Resistance = 0var numRxs = 3var RxNum = 1var NMax = 0.02var NN = 0var NR = 1var tinc = 10var Hinc = 1var Rought = 0var Eought = 0var coulz = 0var joulz = 0var seconz = 0var amps = 0var voltz = 0var heat = 0var RR = 1var wFac = 271.5var Far = 96485var Lout = 0var Rout = 0var showFunc = 0  //0 = g Hg,1 = g ice,2 = joules, 3 = (J/coulomb),4 = (kJ/Far)function changeRx(){	ctrl +=1if (ctrl > 3) ctrl = 1rName = "R" + ctrl + ".gif"document.images["RX"].src = rNameRought = 0.5 + 0.5*Math.random()NMax = (1 + Math.random())/80Eought = 1000*(TdeltaS[ctrl] - deltaH[ctrl])/(Neq[ctrl]*Far)Hinc = -deltaH[ctrl]*1000/(Neq[ctrl]*Far)if (myform != "A") clearem()//setUp()}function setUp(){	var i = 1	var j = 1	var k = 0var mm = 0	database()Rought = 0.5 + 0.5*Math.random()//NMax = (1 + Math.random())/80Eought = 1000*(TdeltaS[ctrl] - deltaH[ctrl])/(Neq[ctrl]*Far)Hinc = -deltaH[ctrl]*1000/(Neq[ctrl]*Far) sels[0] = 0 sels[1] = 1sels[2] = 2sels[3] = 5sels[4] = 10sels[5] = 20sels[6] = 50sels[7] = 100sels[8] = 200sels[9] = 500sels[10] = 1000sels[11] = 10000	}function startit(form){	var mm = 0pic = "bat1.gif"Resistance = 1*sels[document.FormA.q1.selectedIndex]showFunc = document.Form1.mymode.selectedIndexif (1*Resistance > 0){ pic = "bat3.gif"}if (1*Resistance > 1){	pic = "bat2.gif"}if (1*Resistance == 0){	pic = "bat4.gif"}tinc = 10if (Resistance > 2){	tinc = 5*Resistance	mm = 0	while (tinc > 10){			tinc = tinc/10			mm +=1											}	tinc = Math.round(tinc)	tinc = tinc*Math.pow(10,mm)							}	document.images["bat"].src = picmyform = formmytime = 0clearname = setTimeout("runaway()",50)}function stopit(){	clearTimeout(clearname)	document.images["bat"].src = "bat1.gif"}function runaway(){	var atime = ""	var saywhat = ""	var sayvolts = ""	var ma = 0	var mv = 0	var saydum = ""	NN = coulz/Far		NR = (1 - NN/NMax)	//RR = Rought*(1 + 0.0001*Math.pow(NR,-4))	//amps = Eought/(Resistance + RR)		amps = Eought/(Resistance + Rought)coulz += tinc*amps	seconz += tinc	heat += tinc*amps*Hinc	if (Resistance == 0){		voltz = 0	}else{		voltz = amps*Resistance																	}		joulz += tinc*amps*voltzsaywhat = ampswhile (saywhat < 300){	saywhat = 10*saywhat	ma +=1		}	saydum = "0000000" + Math.round(saywhat)	saywhat = saydum.charAt(saydum.length - ma - 1) + "." + saydum.substring(saydum.length - ma)myform.amps.value = saywhatif (voltz == 0){	sayvolts = "0.000"}else{sayvolts = 1*voltzma = 0while (sayvolts < 300){	sayvolts = 10*sayvolts	ma +=1		}	saydum = "0000000" + Math.round(sayvolts)	sayvolts = saydum.charAt(saydum.length - ma - 1) + "." + saydum.substring(saydum.length - ma)				}	myform.volts.value = sayvoltssaywhat = Math.round(joulz)	myform.joules.value = saywhatsaywhat = Math.round(coulz)	myform.coulombs.value = saywhat	myform.seconds.value = seconzif (coulz > 1900){	tinc = Math.floor(0.5 + 1 /amps)		}	if (coulz < 1929){			clearname = setTimeout("runaway()",50)}else{	myform.volts.value = 0	myform.amps.value = 0										}	switch(showFunc){	case 0:		Lout = -(heat - joulz)/280.4;		Rout = -joulz/280.4;		Lout = formats(Lout,300);		Rout = formats(Rout,300);	break;	case 1:		Lout = -(heat - joulz)/333.55;		Rout =-joulz/333.55;		Lout = formats(Lout,300);		Rout = formats(Rout,300);		break;	case 2:		Lout = -Math.round(heat - joulz);		Rout = -Math.round(joulz);		break;	case 3:		Lout = - (heat - joulz)/coulz;		Rout = - joulz/coulz;		Lout = formats(Lout,300);		Rout = formats(Rout,300);		break;	case 4:		Lout = -Math.round(Far*(heat - joulz)/(coulz*10));// multiplied by 100		Rout = -Math.round(Far*joulz/(coulz*10));//mult by 100if (Lout !=0){saywhat = " " + Lout;		saydum = saywhat.length;Lout = saywhat.substring(0,saydum - 2) + "." + saywhat.substring(saydum-2);}if (Rout !=0){saywhat = " " + Rout;		saydum = saywhat.length;Rout = saywhat.substring(0,saydum - 2) + "." + saywhat.substring(saydum-2);}		break;}	myform.Loutput.value = Lout	myform.Routput.value = Rout}function formats(who,howmany){	var whodummy = "0000000"	var ma = 0	var mb = " "if (who < 0){	who = Math.abs(who)	mb = "-"}if (who == 0){	who = "0.000"}else{ma = 0while (who < howmany){	who = 10*who	ma +=1		}	whodummy = "0000000" + Math.round(who)	who = mb + whodummy.charAt(whodummy.length - ma - 1) + "." + whodummy.substring(whodummy.length - ma)				}return who}function setRes(newval){Resistance = newval}function clearem(){	stopit()	myform.amps.value = 0  myform.volts.value = 0myform.seconds.value = 0myform.coulombs.value = 0myform.joules.value = 0myform.Loutput.value = 0myform.Routput.value = 0	seconz = 0	joulz = 0	coulz = 0heat = 0}function database(){React[2] = "Pb(s) + Ag<sub>2</sub>SO<sub>4</sub>(s)"Prod[2] = "2 Ag(s) + PbSO<sub>4</sub>(s)"Neq[2] = 2deltaH[2] =-203.3TdeltaS[2] = -7.85React[1] = "Pb(s) + 2 AgCl(s)"Prod[1] = "2 Ag(s) + PbCl<sub>2</sub>(s)"Neq[1] = 2deltaH[1] =-105.274TdeltaS[1] = -10.22React[3] = "Pb(s) + Hg<sub>2</sub>Cl<sub>2</sub>(s)"Prod[3] = "2 Hg(l) + PbCl<sub>2</sub>(s)"Neq[3] = 2deltaH[3] =-94.19TdeltaS[3] = 8.387}