function PopAzimElev(inlong,inlat,insat, blnupd)
{
 var elev;	
 var azim;	
 var eslong=inlong-0;
 var eslat=inlat-0;
 var sslong=insat-0;

 if ((eslong>=-180) && (eslong<=360) && (sslong>=-180) && (sslong<=360) && (eslat>=-90) && (eslat<=90)) {
	var pie=4*Math.atan(1); 
	var longdiff=Math.min(360-Math.abs(eslong-sslong),Math.abs(eslong-sslong));
	var calimit=Math.acos(6378/(6378+35786))*180/pie;
	var eslong180=eslong;
	var sslong180=sslong;

	if (eslong>180) eslong180=eslong-360;
	if (sslong>180) sslong180=sslong-360;
	if (eslong<=0) eslong=360+eslong;
	if (sslong<=0) sslong=360+sslong;

	if ((eslong180>=0 && eslong180<=calimit && sslong180<=0 && sslong180>=-calimit) || (sslong180>=0 && sslong180<=calimit && eslong180<=0 && eslong180>=-calimit)) {
		eslong=eslong180;
		sslong=sslong180;
	}

	var centralangle=Math.acos(Math.cos(eslat*pie/180)*Math.cos(longdiff*pie/180))*180/pie;

	if (centralangle>calimit) {
		azim="n/a";
	} else {

		if (sslong==0) {
			if (eslong>sslong) {
				azim=270; 
			} else if (eslong<sslong) { 
				azim=90;
			} else { 
				azim=0;
			}
		}

		if (eslong==sslong) {
			if (eslat>0) {
				azim=180;
			} else if (sslong<0) {
				azim=0;
			}
		}

		var cosAz=Math.sin(Math.abs(eslat)*pie/180)*Math.cos(longdiff*pie/180)/Math.sqrt(1-Math.pow(Math.cos(Math.abs(eslat)*pie/180),2)*Math.pow(Math.cos(longdiff*pie/180),2));
		var Az=Math.acos(cosAz)*180/pie;

		Az=Math.round((Az*100))/100;

		if (eslat>0) {
			if (eslong>sslong) {
				azim=180+Az;
			} else if (eslong<sslong) {
				azim=180-Az;
			}
		} else if (eslat<0) {
			if (eslong>sslong) {
				azim=360-Az;
			} else if (eslong<sslong) {
				azim=Az;
			}
		}
	
	}

	//finish2
	var Re=6378-0;
	var H=35786-0;
	var sslat=0-0;

	if (eslong<=0) eslong=eslong+360;
	if (sslong<=0) sslong=sslong+360;

	if ((eslat==0) && (eslong==sslong)) elev=90;

	longdiff=Math.min((360-Math.abs(eslong-sslong)),Math.abs(eslong-sslong));
	centralangle=Math.acos(Math.cos(eslat*pie/180)*Math.cos(longdiff*pie/180))*180/pie;

	if (centralangle>(Math.acos(6378/(6378+35786))*180/pie)) {
		elev="n/a";
	} else {
		cosphi=Math.sin(sslat*pie/180)*Math.sin(eslat*pie/180)+Math.cos(sslat*pie/180)*Math.cos(eslat*pie/180)*Math.cos(Math.abs(eslong-sslong)*pie/180);

		if (cosphi==1) {
			elev="n/a";
		} else {
			var numerom=cosphi-(Re/(Re+H));
			var denumerom=Math.sqrt(1-(cosphi*cosphi));

			elev=Math.round((Math.atan(numerom/denumerom)*180/pie)*100)/100;
		}

		if (elev<0) elev="n/a"	
	}

	if (blnupd) {
		document.forms["CalcAzimElev"].outelev.value=FmtDualDec(elev);
		document.forms["CalcAzimElev"].outazim.value=FmtDualDec(azim);
	}	

 }
}
