pvlib.spaΒΆ

Calculate the solar position using the NREL SPA algorithm either using numpy arrays or compiling the code to machine language with numba.

Functions

aberration_correction(earth_radius_vector)
apparent_sidereal_time(mean_sidereal_time, ...)
apparent_sun_longitude(geocentric_longitude, ...)
atmospheric_refraction_correction(...)
calculate_deltat(year, month) Calculate the difference between Terrestrial Dynamical Time (TD) and Universal Time (UT).
earthsun_distance(unixtime, delta_t, numthreads) Calculates the distance from the earth to the sun using the NREL SPA algorithm described in [1].
equation_of_time(sun_mean_longitude, ...)
equatorial_horizontal_parallax(...)
geocentric_latitude(heliocentric_latitude)
geocentric_longitude(heliocentric_longitude)
geocentric_sun_declination(...)
geocentric_sun_right_ascension(...)
heliocentric_latitude(jme)
heliocentric_longitude(jme)
heliocentric_radius_vector(jme)
jcompile(*args, **kwargs)
julian_century(julian_day)
julian_day(unixtime)
julian_day_dt(year, month, day, hour, ...) This is the original way to calculate the julian day from the NREL paper.
julian_ephemeris_century(julian_ephemeris_day)
julian_ephemeris_day(julian_day, delta_t)
julian_ephemeris_millennium(...)
local_hour_angle(apparent_sidereal_time, ...) Measured westward from south
longitude_nutation(julian_ephemeris_century, ...)
mean_anomaly_moon(julian_ephemeris_century)
mean_anomaly_sun(julian_ephemeris_century)
mean_ecliptic_obliquity(...)
mean_elongation(julian_ephemeris_century)
mean_sidereal_time(julian_day, julian_century)
moon_argument_latitude(julian_ephemeris_century)
moon_ascending_longitude(...)
nocompile(*args, **kwargs)
obliquity_nutation(julian_ephemeris_century, ...)
parallax_sun_right_ascension(xterm, ...)
solar_position(unixtime, lat, lon, elev, ...) Calculate the solar position using the NREL SPA algorithm described in [1].
solar_position_loop(unixtime, loc_args, out) Loop through the time array and calculate the solar position
solar_position_numba(unixtime, lat, lon, ...) Calculate the solar position using the numba compiled functions and multiple threads.
solar_position_numpy(unixtime, lat, lon, ...) Calculate the solar position assuming unixtime is a numpy array.
sun_mean_longitude(julian_ephemeris_millennium)
topocentric_astronomers_azimuth(...)
topocentric_azimuth_angle(...)
topocentric_elevation_angle(...)
topocentric_elevation_angle_without_atmosphere(...)
topocentric_local_hour_angle(...)
topocentric_sun_declination(...)
topocentric_sun_right_ascension(...)
topocentric_zenith_angle(...)
transit_sunrise_sunset(dates, lat, lon, ...) Calculate the sun transit, sunrise, and sunset for a set of dates at a given location.
true_ecliptic_obliquity(...)
uterm(observer_latitude)
xterm(u, observer_latitude, observer_elevation)
yterm(u, observer_latitude, observer_elevation)