# Calculating Sun Declination

Declination of the sun is the angle between the equator and a line drawn from Earth to Sun center to center.

The declination angle varies seasonally due to 2 factors — the tilt of the Earth on its axis and its rotation around the sun. If the Earth were not tilted on its axis of rotation, the declination would always be 0°. However, the Earth is tilted by 23.45° and the declination angle varies plus or minus this amount. Only at the spring and fall equinoxes is the declination angle equal to 0°.

The declination angle can be calculated with the following equation:

dec= 23.45 x sin(2PI/365 x (d-81))

where d is the day of the year with Jan 1 as d = 1.

For more accurate calculations SPA algorithm is used.

The algorithm is as follows:

```
dOmega=2.1429-0.0010394594*dElapsedJulianDays;
dMeanLongitude = 4.8950630+ 0.017202791698*dElapsedJulianDays;
// Radians dMeanAnomaly = 6.2400600+ 0.0172019699*dElapsedJulianDays;
dEclipticLongitude = dMeanLongitude + 0.03341607*sin( dMeanAnomaly ) + 0.00034894*sin( 2*dMeanAnomaly )-0.0001134 -0.0000203*sin(dOmega);
dEclipticObliquity = 0.4090928 - 6.2140e-9*dElapsedJulianDays +0.0000396*cos(dOmega);
dSin_EclipticLongitude= sin( dEclipticLongitude );
dY = cos( dEclipticObliquity ) * dSin_EclipticLongitude;
dX = cos( dEclipticLongitude );
dRightAscension = atan2( dY,dX ); if( dRightAscension < 0.0 ) dRightAscension = dRightAscension + twopi;
dDeclination = asin( sin( dEclipticObliquity )*dSin_EclipticLongitude );
```

The following web app calculates and plots Sun Declination for the whole year using the algorithm: