Forum Moderators: open

Message Too Old, No Replies

Math does not compute.

some fields are left blank even though they have simple calculations.

         

gracesaieva

10:16 pm on Dec 14, 2006 (gmt 0)

10+ Year Member



Hi, I'm working on a calculation for a website. It seems like some of the values are not being computed and I'm not sure why. It looks pretty simple. For instance, meters/second in Airspeed is not being computed even though it just takes a number from feet and converts it. Any ideas?

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>
<html>
<head>
<title>Untitled Document</title>

<style>
.grey {background-color: #E8E8E8;}
.red {background-color: #FFDFAA;}

</style>

<script type="text/javascript">

<!--

function dostuff()
{
var mph
var meterspsecond
var knots
var rangemiles
var rangekm
var altitudeft
var altitudemeters
var rxantennaheight
var alteredheight
var slantrangemiles
var slantrangekm
var distancetohorizon
var dishdiameterft
var dishdiameterm
var lognumber
var dishaegain
var threedbblacknwhite
var degrees
var radians
var cvar
var relativepermittivity
var wavelength
var rfcafe
var toms
var pathloss
var txpower
var txaegain
var rxsensitivity
var linkmargin
var ftx
var watts

ftx = document.calculateForm.enterftx.value
mph = document.calculateForm.entermph.value
watts = document.calculateForm.enterwatts.value
meterspsecond = (mph*26.822)/60
knots = mph*0.86898
rangemiles = document.calculateForm.enterrange.value
rangekm = rangemiles*8/5
altitudeft = document.calculateForm.enteraltitude.value
altitudemeters = altitudeft*0.3048
rxantennaheight = document.calculateForm.enterrxheight.value
alteredheight = (altitudeft-rxantennaheight)/5280
slantrangemiles = Math.sqrt((alteredheight^2)+(rangemiles^2))
slantrangekm = (slantrangemiles)*8/5
distancetohorizon = (Math.sqrt(altitudeft)*1.415)+(Math.sqrt(rxantennaheight)*1.415)
dishdiameterft = document.calculateForm.enterdishdiameter
dishdiameterm = dishdiameterft*0.3048
cvar = 299792459
relativepermittivity = 1
wavelength = cvar/(ftx*1000000)
lognumber = 0.55*((3.142*(dishdiameterm/wavelength))*(3.142*(dishdiameterm/wavelength)))
dishaegain = 10*Math.log(lognumber)
threedbblacknwhite = 70*wavelength/dishdiameterm
radians = Math.atan(alteredheight/rangemiles)
degrees = radians * (180/Math.PI)
rfcafe = meterspsecond*Math.cos(radians)*(ftx*1000000/cvar)
toms = Math.cos(radians)*(((meterspsecond/cvar)*ftx*1000000)/(1+(meterspsecond/cvar)))
pathloss = -20*Math.log(4*3.142*(slantrangekm*1000)/wavelength)
txpower = 10*(Math.log(watts*1000))
txaegain = document.calculateForm.entertxaegain.value
rxsensitivity = document.calculateForm.enterrxsensitivity.value
linkmargin = pathloss+txpower+txaegain+dishaegain+rxsensitivity

document.calculateForm.outmeterspsecond.value = meterspsecond
document.calculateForm.outknots.value = knots
document.calculateForm.outrangekm.value = rangekm
document.calculateForm.outaltitudemeters.value = altitudemeters
document.calculateForm.outslantrangemiles.value = slantrangemiles
document.calculateForm.outslantrangekm.value = slantrangekm
document.calculateForm.outaltitudeft.value = altitudeft
document.calculateForm.outdistancetohorizon.value = distancetohorizon
document.calculateForm.outdishdiameterm.value = dishdiameterm
document.calculateForm.outdishaegain.value = dishaegain
document.calculateForm.outthreedbblacknwhite.value = threedbblacknwhite
document.calculateForm.outmeterspsecond.value = meterspsecond
document.calculateForm.outdegrees.value = degrees
document.calculateForm.outradians.value = radians
document.calculateForm.outwavelength.value = wavelength
document.calculateForm.outrfcafe.value = rfcafe
document.calculateForm.outtoms.value = toms
document.calculateForm.outpathloss.value = pathloss
document.calculateForm.outtxpower.value = txpower
document.calculateForm.outlinkmargin.value = linkmargin

}
-->

</script>

</head>

<body>

<form name="calculateForm">

<h1>Formulae</h1>
<h3>RF CAFÉ Formula</h3>
<h3>Fdoppler = Vtarget * cos? * Ftx/c</h3>
Change the grey values to figure out answers

displayed in red boxes.
<table>
<tr><td colspan="2"><h3>Airspeed</h3></td></tr>
<tr><td>MPH: </td><td><input type="text" name="entermph" size="6" value="80" class="grey"></td></tr>
<tr><td>Meters/Second: </td><td><input type="text" name="outmeterspsecond" size="6" class="red"></td></tr>
<tr><td>Knots: </td><td><input type="text" name="outknots" size="6" class="red"></td></tr>
</table><br><br>

<table>
<tr><td colspan="2"><h3>Altitude</h3></td></tr>
<tr><td>Range in Miles: </td><td><input type="text" name="enterrange" size="6" value="40" class="grey"></td></tr>
<tr><td>Range in Kilometers: </td><td><input type="text" name="outrangekm" size="6" class="red"></td></tr>
<tr><td>Altitude in Feet: </td><td><input type="text" name="enteraltitude" size="6" value="2000" class="grey"></td></tr>
<tr><td>Altitude in Meters: </td><td><input type="text" name="outaltitudemeters" size="6" class="red"></td></tr>
<tr><td>Slant Range in Miles: </td><td><input type="text" name="outslantrangemiles" size="6" class="red"> Miles </td></tr>
<tr><td>Slant Range in Kilometers: </td><td><input type="text" name="outslantrangekm" size="6" class="red"> Km</td></tr>
</table><br><br>

<table>
<tr><td colspan="2"><h3>Theoretical Radio Horizon</h3></td></tr>
<tr><td>TX Antenna Height: </td><td><input type="text" name="outaltitudeft" size="6" class="red"> Ft</td></tr>
<tr><td>RX Antenna Height: </td><td><input type="text" name="enterrxheight" size="6" value="20" class="grey">Ft</td></tr>
<tr><td>Distance to Horizon: </td><td><input type="text" name="outdistancetohorizon" size="6" class="red">Ft</td></tr>
</table><br><br>

<table>
<tr><td colspan="2"><h3>Dish Antenna Gain & 3dB B/W </h3><h4>Using 55% Efficiency</h4></td></tr>
<tr><td>Dish Diameter in Feet: </td><td><input type="text" name="enterdishdiameter" size="6" value="3" class="grey">Ft</td></tr>
<tr><td>Dish Diameter in Meters: </td><td><input type="text" name="outdishdiameterm" size="6" class="red"> Meters</td></tr>
<tr><td>Dish Ae Gain: </td><td><input type="text" name="outdishaegain" size="6" class="red"></td></tr>
<tr><td>3dB B/W: </td><td><input type="text" name="outthreedbblacknwhite" size="6" class="red"></td></tr>
</table><br><br>

<table>
<tr><td colspan="2"><h3>Doppler Shift Calculation. COFDM technology only</h3></td></tr>
<tr><td colspan="2">Vtarget: </td><td><input type="text" name="outmeterspsecond" size="6" class="red">m/s </td></tr>
<tr><td colspan="2">&theta; Degrees: </td><td><input type="text" name="outdegrees" size="6" class="red"></td></tr>
<tr><td colspan="2">&theta; Radians: </td><td><input type="text" name="outradians" size="6" class="red"></td></tr>
<tr><td colspan="2">Ftx: </td><td><input type="text" name="enterftx" size="6" value="6400" class="grey">Mhz</td></tr>
<tr><td colspan="2">Wavelength: </td><td><input type="text" name="outwavelength" size="6" class="red"> Meters</td></tr>
<tr><td><h4>RF Café Formula<h4> Fd: <input type="text" name="outrfcafe" size="6" class="red"> Hz</td>
<td><h4>Tom's formula<h4> <input type="text" name="outtoms" class="red">Hz</td></tr>
</table><br><br>

<p>MSR with 2CH Diversity and QPSK 1/2 FEC signal max doppler shift is 708 Hz.<br>
MSR with 1CH Diversity and QPSK 1/2 FEC signal max doppler shift is 570 Hz.<br>
Note: Both channels must see transmitted RF.</p>

<table>
<tr><td colspan="2"><h3>Link Budget</h3></td></tr>
<tr><td>Path Loss Calculation: </td><td><input type="text" name="outpathloss" size="6" class="red"> dB</td></tr>
<tr><td><h4>System Calculation</h4></td></tr>
<tr><td>Tx power: </td><td><input type="text" name="outtxpower" size="6" class="red">dBm</td></tr>
<tr><td>Watts</td><td><input type="text" name="enterwatts" size="6" value="1" class="grey"> </td></tr>
<tr><td>Tx Ae Gain: </td><td><input type="text" name="entertxaegain" size="6" value="9" class="grey"> dB</td></tr>
<tr><td>Rx Ae Gain: </td><td><input type="text" name="outdishaegain" size="6" class="red"> dB, Dish Antenna </td></tr>
<tr><td>Rx Sensitivity: </td><td><input type="text" name="enterrxsensitivity" size="6" value="75" class="grey"> dB</td></tr>
<tr><td>Link Margin: </td><td><input type="text" name="outlinkmargin" size="6" class="red"></td></tr>
</table><br><br>

<input type="button" name="Calculate" value="Calculate" onclick="dostuff()">
</form>

</body>
</html>

</body>
</html>

gracesaieva

11:03 pm on Dec 14, 2006 (gmt 0)

10+ Year Member



o.k., I figured out that it's the meterspsecond that is being used twice that is giving me problems. When I comment out the other places it's used, It shows up right. Are there order laws I should know about?