Calculation of sunrise and sunset: Difference between revisions
From WickyWiki
Created page with "Category:Other Category:201903 Source: * https://www.esrl.noaa.gov/gmd/grad/solcalc/ * https://www.esrl.noaa.gov/gmd/grad/solcalc/solareqns.PDF Input example * Europ..." |
mNo edit summary |
||
| Line 6: | Line 6: | ||
* https://www.esrl.noaa.gov/gmd/grad/solcalc/solareqns.PDF | * https://www.esrl.noaa.gov/gmd/grad/solcalc/solareqns.PDF | ||
Input example | Input example: | ||
* | * Date --> vDayOfYear | ||
* Date --> vLeapyear | |||
* Date --> | |||
Fractional year (radians) | Fractional year (radians) | ||
| Line 39: | Line 38: | ||
vUtcMinsSunset = 360 * 2 - 4 * (vLon - vHa) - vEqtime | vUtcMinsSunset = 360 * 2 - 4 * (vLon - vHa) - vEqtime | ||
Sunrise local time (fractional day) | Sunrise local time (fractional day). For Europe/Amsterdam --> vTimezone=+1 or +2 (DST) | ||
(vUtcMinsSunrise / 60 + vTimezone) / 24 | (vUtcMinsSunrise / 60 + vTimezone) / 24 | ||
Revision as of 12:34, 3 March 2019
Source:
- https://www.esrl.noaa.gov/gmd/grad/solcalc/
- https://www.esrl.noaa.gov/gmd/grad/solcalc/solareqns.PDF
Input example:
- Date --> vDayOfYear
- Date --> vLeapyear
Fractional year (radians)
vY = 2 * PI() / (365 + vLeapYear) * (vDayOfYear - 1 )
Equation of time (minutes)
vEqtime = 229.18 * (0.000075 + 0.001868 * COS( vY ) - 0.032077 * SIN( vY ) - 0.014615 * COS(2 * vY ) - 0.040849 * SIN(2 * vY )
Solar declination angle (radians).
vDecl = 0.006918 - 0.399912 * COS(vY) + 0.070257 * SIN(vY) - 0.006758 * COS(2 * vY) + 0.000907 * SIN(2 * vY) - 0.002697 * COS(3 * vY) + 0.00148 * SIN (3 * vY)
For sunrise or sunset, the zenith is set to 90.833 degrees (the approximate correction for atmospheric refraction at sunrise and sunset, and the size of the solar disk). Hours angle:
vHa = ACOS( COS( RADIANS(90.833) ) / COS(vLat) * COS(vDecl) - TAN(vLat) * TAN(vDecl) )
Sunrise UTC minutes
vUtcMinsSunrise = 360 * 2 - 4 * (vLon + vHa) - vEqtime
Noon UTC minutes
vUtcMinsNoon = 360 * 2 - 4 * vLon - vEqtime
Sunset UTC minutes
vUtcMinsSunset = 360 * 2 - 4 * (vLon - vHa) - vEqtime
Sunrise local time (fractional day). For Europe/Amsterdam --> vTimezone=+1 or +2 (DST)
(vUtcMinsSunrise / 60 + vTimezone) / 24