Maanfase III

Project maanfase gaat weer verder. Deze keer voeg ik een betere berekening toe.

Hier is de code: De berekening is gebaseerd op Jean Meeus’ boek Astronomical Formulae for Calculators (vierde uitgave uit 1988.) Het is een onzalig rommeltje dat de locaties van zon en maan benadert en dat is nog maar een ruwe berekening! Hopelijk nauwkeurig genoeg voor de almanak op deze site, maar ik zou er geen nieuwe Apollo missie mee plannen. De code geeft een hoek van 0 tot 360 graden als output, gebaseerd op de hoek tussen zon en maan vanaf de aarde gezien. Het hele zaakje omwerken naar radialen is waarschijnlijk netter in een javascript programma maar ik ben eerlijk gezegd al lang blij als dit werkt.

function maanfase(tijd){
	// Meeus ch 30, 31
	// input in fractionele Juliaanse Dag, output in graden

	const deg2rad = 0.0174532925199; // 2pi/360
	var T  = (tijd  -  2415020.0)/36525;
	var M  = 358.475833 +  35999.04975 * T - 0.000150 * T*T - 0.0000033 * T*T*T ;
	var MP = 296.104608 + 477198.8491  * T + 0.009192 * T*T + 0.0000144 * T*T*T ;
	var D  = 350.737486 + 445267.1142  * T + 0.001436 * T*T + 0.0000019 * T*T*T ;

	var fase = ( D - 6.289 * Math.sin(MP           * deg2rad) 
				   - 2.100 * Math.sin(M            * deg2rad)
				   + 1.274 * Math.sin((2 * D - MP) * deg2rad)
				   + 0.658 * Math.sin( 2 * D       * deg2rad)
				   + 0.214 * Math.sin( 2 * MP      * deg2rad)
				   + 0.112 * Math.sin( D           * deg2rad)); 

	return fase % 360;
}

function JD(tijd){
	// Maak Juliaanse dag van js. tijd
	return 2440587.5 + tijd / 86399806.53;
}