<html> <head> <title>Bass Boost Calculator</title> </head> <body> <h1>Bass Boost Calculator</h1> <form name="bbc" onsubmit="return calculate()"> R<sub>3</sub> = <input id="R3" size="2" value="1">kΩ, R<sub>4</sub> = <input id="R4" size="2" value="10">kΩ, R<sub>bb</sub> = <input id="Rbb" size="2" value="33">kΩ, C<sub>bb</sub> = <input id="Cbb" size="2" value=".22">µF <input type="submit" value="Calculate"> </form> <div id="output"><font color="red">JavaScript is required.</font></div> <script type="text/javascript"><!-- function format(n) {return Math.round(n*10)/10} // toFixed method not supported by Safari or IE on Mac OS X function calculate() {with(Math){ R3 = form.R3.value*1000 R4 = form.R4.value*1000 Rbb = form.Rbb.value*1000 Cbb = form.Cbb.value/1000000 Av = R4/R3+1 Abb = Rbb/(R3+R4)+1 TwoPiRC = 2*PI*Rbb*Cbb fs = Abb/(TwoPiRC*sqrt(Abb*Abb-2)) fc = sqrt(Abb*Abb-2)/TwoPiRC fo = sqrt(Abb)/TwoPiRC div.innerHTML = "A<sub>v<\/sub> = " + format(Av) + " (" + format(20*log(Av)/LN10) + "dB), " + "A<sub>bb<\/sub> = " + format(Abb) + " (" + format(20*log(Abb)/LN10) + "dB), " if (Abb > 2) div.innerHTML += "ƒ<sub>s<\/sub> = " + format(fs) + "Hz, " + "ƒ<sub>c<\/sub> = " + format(fc) + "Hz" else div.innerHTML += "ƒ<sub>o<\/sub> = " + format(fo) + "Hz" return false // force failure of form submission }} form = document.bbc div = document.getElementById("output") calculate() // --></script> </body> </html>