Procedures to calculate solar elevation. More...
#include "time.h"Defines | |
| #define | SOLAR_MAX_ANGLE 180.0f |
| Maximum solar angle. | |
| #define | SOLAR_MIN_ANGLE -180.0f |
| Minimum solar angle. | |
| #define | SOLAR_ATM_REFRAC 0.833 |
| Model of atmospheric refraction near horizon (in degrees). | |
| #define | SOLAR_ASTRO_TWILIGHT_ELEV -18.0f |
| Uh.... | |
| #define | SOLAR_NAUT_TWILIGHT_ELEV -12.0f |
| Uh.... | |
| #define | SOLAR_CIVIL_TWILIGHT_ELEV -6.0f |
| Uh.... | |
| #define | SOLAR_DAYTIME_ELEV (0.0f - SOLAR_ATM_REFRAC) |
| Uh.... | |
| #define | RAD(x) ((x)*(M_PI/180)) |
| Converts degrees to radians. | |
| #define | DEG(x) ((x)*(180/M_PI)) |
| Converts radians to degrees. | |
Enumerations | |
| enum | solar_time_t { SOLAR_TIME_NOON = 0, SOLAR_TIME_MIDNIGHT, SOLAR_TIME_ASTRO_DAWN, SOLAR_TIME_NAUT_DAWN, SOLAR_TIME_CIVIL_DAWN, SOLAR_TIME_SUNRISE, SOLAR_TIME_SUNSET, SOLAR_TIME_CIVIL_DUSK, SOLAR_TIME_NAUT_DUSK, SOLAR_TIME_ASTRO_DUSK, SOLAR_TIME_MAX } |
Solar times. More... | |
Functions | |
| double | solar_elevation (double date, double lat, double lon) |
| Calculates solar elevation given date, latitude, and longitude. | |
| void | solar_table_fill (double date, double lat, double lon, double *table) |
| Solar table initialization function, no idea. | |
Procedures to calculate solar elevation.
Ported from javascript code by U.S. Department of Commerce, National Oceanic & Atmospheric Administration: http://www.srrb.noaa.gov/highlights/sunrise/calcdetails.html It is based on equations from "Astronomical Algorithms" by Jean Meeus.
| enum solar_time_t |
Solar times.
1.7.1