pvlib.solarposition.calc_time

pvlib.solarposition.calc_time(lower_bound, upper_bound, latitude, longitude, attribute, value, altitude=0, pressure=101325, temperature=12, xtol=1e-12)[source]

Calculate the time between lower_bound and upper_bound where the attribute is equal to value. Uses PyEphem for solar position calculations.

Parameters:

lower_bound : datetime.datetime

upper_bound : datetime.datetime

latitude : float

longitude : float

attribute : str

The attribute of a pyephem.Sun object that you want to solve for. Likely options are ‘alt’ and ‘az’ (which must be given in radians).

value : int or float

The value of the attribute to solve for

altitude : float

Distance above sea level.

pressure : int or float, optional

Air pressure in Pascals. Set to 0 for no atmospheric correction.

temperature : int or float, optional

Air temperature in degrees C.

xtol : float, optional

The allowed error in the result from value

Returns:

datetime.datetime

Raises:

ValueError

If the value is not contained between the bounds.

AttributeError

If the given attribute is not an attribute of a PyEphem.Sun object.