<html>
<head>
<title>Planetary Dynamics</title>
</head>
<body>
<script>
//start time
var t = 0.0;
//time step in fractions of a day
var dt = 0.05;
//printout interval: printout every dp steps
var dp = Math.floor(1.0/dt);
if (dp < 1) {dp=1;}
//header interval: header every dh steps
var dh = 10*dp;
if (dh < 10) {dh=10;}
//stop time
var tmax = 400.0;
//kinematic variables
var g = 6.67e-11;
g = g*24.0*24.0*3600.0*3600.0;
var ms = 1.99e30;
var me = 5.97e24;
var au = 1.496e11;
var rperih = 1.471e11;
var vperih = 30.3e3;
var raperih = 1.521e11;
var vaperih = 29.3e3;
var alb = 0.35;
var te = 0.0;
var tkelvin = 0.0;
var angle = 0.0;
var xx1 = rperih;
var xx2 = xx1;
var vx1 = 0.0;
var vx2 = vx1;
var ax = 0.0;
var yy1 = 0.0;
var yy2 = yy1;
var vy1 = vperih*24.0*3600.0;
var vy2 = vy1;
var ay = 0.0;
var rse = 0.0;
var istep =0;
document.write("<table>")
while (t <= tmax) {
if ((istep % dh)==0) {
document.write("<tr bgcolor=\"#ddffdd\"><th>t (days)</th><th>angle (deg)</th>");
document.write("<th>distance (m)</th><th>Total Energy</th><th>Temp (<sup>o</sup>K)</th>");
document.write("<th>ax (m/day<sup>2</sup>)</th><th>vx (m/day)</th><th>xx (m)</th>");
document.write("<th>ay (m/day<sup>2</sup>)</th><th>vy (m/day)</th><th>yy (m)</th></tr>");
}
rse = Math.sqrt(xx1*xx1+yy1*yy1);
ax = -g*ms*xx1/Math.pow(rse,3);
vx2 = vx1 + ax*dt;
xx2 = xx1 + vx1*dt + 0.5*ax*dt*dt;
ay = -g*ms*yy1/Math.pow(rse,3);
vy2 = vy1 + ay*dt;
yy2 = yy1 + vy1*dt + 0.5*ay*dt*dt;
te = 0.5*me*(vx2*vx2+vy2+vy2)-g*me*ms/rse;
tkelvin = 279.0*Math.pow((1.0-alb),0.25)*Math.pow((rse/au),-0.5);
istep++;
t = istep*dt;
angle = Math.atan2(yy2,xx2)*180.0/Math.PI;
if (angle<0.0) {angle=360.0+angle;}
vx1 = vx2;
xx1 = xx2;
vy1 = vy2;
yy1 = yy2;
if ((istep % dp)==0) {
document.write("<tr><th>"+t+"</th><th>"+angle+"</th>"); istep++;
document.write("<th>"+rse+"</th><th>"+te+"</th><th>"+tkelvin+"</th>");
document.write("<th>"+ax+"</th><th>"+vx2+"</th><th>"+xx2+"</th>");
document.write("<th>"+ay+"</th><th>"+vy2+"</th><th>"+yy2+"</th></tr>");
}
}
document.write("</table>");
</script>
</body>
</html>